愷龍 发表于 2020-12-28 15:20:21

为什么没有执行scanf语句?

本帖最后由 愷龍 于 2020-12-28 15:32 编辑

写了一个小程序,设置的是通过输入数字然后输出这些数字asc值对应的字符,但是为什么scanf语句没有执行。运行以后显示的就直接是这个界面?
https://pic.downk.cc/item/5fe9871b3ffa7d37b3b0b743.jpg
源代码:
#include <stdio.h>
main()
{
        int a;
        int n;
        int m;
        int s=0;
        printf("please intput the number that you want to");
        for(int b=0;b<n;b++)
        {
                scanf("%d",&m);
                a=m;
                s++;       
        }
        for(int b=0;b<n;b++)
        {
                printf("%s",a);
                s++;
        }
       
}

风过无痕1989 发表于 2020-12-28 15:32:16

本帖最后由 风过无痕1989 于 2020-12-28 15:39 编辑

n 没有赋值,输出的控制符错用字符型
#include <stdio.h>
int main()
{
      int a;
      int b,m;
      int s=0;
      printf("please intput the number that you want to:");
      for(b=0;b<20;b++)
      {
                scanf("%d",&m);
                a=m;
                s++;
      }
      for(s=0;s<b;s++)
      {
                printf("%d ",a);
      }
      
}

愷龍 发表于 2020-12-28 15:32:48

风过无痕1989 发表于 2020-12-28 15:32
n 没有赋值

呀,对对对

jackz007 发表于 2020-12-28 15:33:03

   n 没有赋值,你少了一句代码
      printf("please intput the number that you want to");
      scanf("%d" , & n) ;   // 添加此句
      for(int b=0;b<n;b++)

愷龍 发表于 2020-12-28 15:42:06

jackz007 发表于 2020-12-28 15:33
n 没有赋值,你少了一句代码

https://pic.downk.cc/item/5fe98c0f3ffa7d37b3b88ef9.jpg理论上输入这些值应该出现Hello,world但是为什么我这个出现的是这个样子?

愷龍 发表于 2020-12-28 15:43:17

jackz007 发表于 2020-12-28 15:33
n 没有赋值,你少了一句代码

#include <stdio.h>
main()
{
        int a;
        int n;
        int m;
        int s=0;
        int b;
        printf("请输入你想输入的字符个数");
        scanf("%d",&n);
        printf("请输入你想输入的数字,请不要超过20个");
        for( b=0;b<n;b++)
        {
                scanf("%d",&m);
                a=m;
                s++;       
        }
        for(b=0;b<n;b++)
        {
                printf("%c",a);
                s++;
        }
       
}
调整后的代码
页: [1]
查看完整版本: 为什么没有执行scanf语句?