scanf后加空格,的后果

最近练习C语言函数,用函数进行选择排序

 1 #include <stdio.h>
 2
 3 int main()
 4 {
 5     void sort(int array[],int n);
 6     int i,slist[10];
 7
 8     for (i = 0; i<10 ;i++)
 9     {
10         scanf("%d ",&slist[i]);
11     }
12     sort(slist,10);
13     printf("The sorted array:\n");
14     for(i= 0;i <10;i++)
15     {
16         printf("%3d",slist[i]);
17     }
18     printf("\n");
19     return (0) ;
20  }
21
22  void sort(int array[],int n)
23  {
24      int i,j,k,m;
25      for(i = 0;i < n-1;i++)
26      {
27          k = i;
28          for(j = i+1;j < n; j++)
29          {
30              if(array[j]<array[k])
31              {
32                  k = j;
33             }
34          }
35         m = array[i];
36          array[i] = array[k];
37          array[k] = m;
38      }
39  }

调试运行后,输入完数组后总要再输入一个数才能显示结果。在网上找到选择排序的方法,发现代码内容一样就是找不到错误。经过多番询问,得知scanf %d后不需要加空格

#include <stdio.h>

int main()
{
    void sort(int array[],int n);
    int i,slist[10];

    for (i = 0; i<10 ;i++)
    {
        scanf("%d",&slist[i]);
    }
    sort(slist,10);
    printf("The sorted array:\n");
    for(i= 0;i <10;i++)
    {
        printf("%3d",slist[i]);
    }
    printf("\n");
    return (0) ;
 } 

 void sort(int array[],int n)
 {
     int i,j,k,m;
     for(i = 0;i < n-1;i++)
     {
         k = i;
         for(j = i+1;j < n; j++)
         {
             if(array[j]<array[k])
             {
                 k = j;
            }
         }
        m = array[i];
         array[i] = array[k];
         array[k] = m;
     }
 }

去掉scanf 里面的空格

时间: 2024-10-08 03:31:10

scanf后加空格,的后果的相关文章

使用live delegate on来解决js对后加载的html失效的问题

今天要写一个前端的东西.每多学一点知识,就可以少写几行代码.几十行代码.几个文件量的代码--这是真的.一直对前端的研究都是停留在遇到问题百度谷歌答案的做法.今天遇到这样一个问题:已经写好的js代码,对ajax加载的html失效了. 用好几组关键字都没有找到答案,最后这组帮我找到了解答的办法: javascript not work on ajax content 很幸运,我来到了:http://stackoverflow.com/questions/10161938/jquery-functio

使用tcp_probe时最初没有输出,先卸载后加载模块之后就有了。

刚才尝试使用tcp_probe来查看tcp的窗口的变化,最初按照tcpprobe | The Linux Foundation的步骤进行设置,但是iperf之后tcp_probe并没有输出结果.按照tcp_probe module does no output中的回答先modprobe -r tcp_probe后加载就好了. google过程中发现对于tcp_probe的使用和源码分析还两个不错的参考材料 mscom_network_start [Digitale Elektronik und

分析:新建短信,当我们接受人RecipientsEditor中输入+86的时候,系统会自动在+86后加入空格

我们可以认为这是一个很人性的格式化操作,在ComposeMessageActivity中系统在调用initRecipientsEditor()方法对联系人进行初始化的时候调用了 PhoneNumberFormatter.setPhoneNumberFormattingTextWatcher(this, mRecipientsEditor);我们通过对代码进行追踪发现,最终调用了Framework中PhoneNumberFormattingTextWatcher类对电话号码进行格式化处理,并在处理

在js或css后加?v= 版本号不让浏览器缓存

在js或css后加?v= 版本号不让浏览器缓存,jscss 客户端会缓存css或js文件,改变版本号,客户端浏览器就会重新下载新的js或css文件,在js或css后加?v= 版本号的用法如下 代码如下: <span style="font-size:14px;">css和js带参数(形如.css?v=与.js?v= 或 .css?version=与.js?version= ) <script type=”text/javascript” src=”jb51.js?ve

多行文本截取后加...

引用Jquery $(".figcaption").each(function(i){    var divH = $(this).height();    var $p = $("p", $(this)).eq(0);    while ($p.outerHeight() > divH) {        $p.text($p.text().replace(/(\s)*([a-zA-Z0-9]+|\W)(\.\.\.)?$/, "..."

【Android】android string.xml前后加空格的技巧

android string.xml 文字中间加入空格 <string name="password">密    码</string> &#160 这个就代表着空格 [Android]android string.xml前后加空格的技巧,布布扣,bubuko.com

Ajax请求URL后加随机数原理

原文:Ajax请求URL后加随机数原理 例如: $.ajax({             type: "GET",    url: "login.action?ran="+getRandomNum() }); 中url后面接了个随机数,是为了欺骗浏览器或代理服务器用的:某些代理服务器会无视 no-cache 之类的标识,对响应结果进行强行缓存:而当url请求不改变的时候,有时候会导致浏览器不向服务器发送请求,而直接取调用缓存中的数据.加上随机数就是欺骗浏览器url改

1、两人做游戏,轮流报数,报出的数只能是1、2、3、4、5、6、7、8其中之一,把两个人报出的数连加起来,谁报数后加起来的和是123,谁就获胜,让你先报,为了确保胜利,你第一个数报多少?

看到一道奥数题,如下 两人做游戏,轮流报数,报出的数只能是1.2.3.4.5.6.7.8其中之一,把两个人报出的数连加起来,谁报数后加起来的和是123,谁就获胜,让你先报,为了确保胜利,你第一个数报多少? 看了网上一些答案,觉得不太好理解,下面说说自己的解题思路. 首先用123去除9,得到商为13余数为6.   于是我们可以先报6然后让此后每一轮的大家报数的和为9. 这样可以保证最后一轮中对方无论报什么数都无法让总数到达123,因为到了最后一轮时,若用123去减此前所有报数之和肯定为9.这时,对

[Reprint]C++函数前和函数后加const修饰符区别

c++中关于const的用法有很多,const既可以修饰变量,也可以函数,不同的环境下,是有不同的含义.今天来讲讲const加在函数前和函数后面的区别.比如: 01 #include<iostream> 02   03 using namespace std; 04   05 // Ahthor:  过往记忆 06 // E-mail:  [email protected] 07 // Blog:    http://www.iteblog.com 08 // 转载请注明出处 09   10