C++C语言的改错问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 07:00:53
1、试找出程序中的语法错误,写出错误所在行号及正确内容。
#include <stdio.h>
#1 main
#2 {
#3 int m,n,k,i;
#4 scanf( "%d%d", m, n );
#5 if m < n
#6 k = 1
#7 else
#8 k = -1;
#9 for ( i = m,i != n, i+=k )
#10 printf( "%d ", i );
#11 }
【答案】
#4 scanf( "%d%d", &m, &n );

2、程序功能为:判断从键盘上输入的一个字符,并按下列要求输出。若该字符是数字 输出字符串"0-9";若该字符是大写字母 输出字符串"A-Z";若该字符是小写字母 输出字符串"a-z";若该字符是其他字符 输出字符串"!,@,…",写出错误所在行号及正确内容。

#include <stdio.h>
#1 main()
#2 { int c;
#3 printf("请输入字符,系统将显示其范围\n");
#4 scanf("%c",&c);
#5 if('0'<=c||c<='9')
#6 printf("\t0-9\n");
#7 else if('A'>=c&&c<='Z')
#8 printf("\tA-Z\n");
#9 else if('a'<=c&&c>='z')
#10

1.
#1 void main//不带void的这种写法不规范,有些编译器会出错。
#5 if (m < n )//条件必须加括号
#6 k = 1;//语句必须以;结束
#9 for ( i = m;i != n; i+=k ) //for语句以;隔开

2。
#1 void main() //不带void的这种写法不规范,有些编译器会出错。
#2 { char c; //后面比较是按char型来比较的
#5 if('0'<=c&&c<='9') //因该是间于0和9之间,所以用&&
#7 else if('A'<=c&&c<='Z') //应该是'A'<=c
#9 else if('a'<=c&&c<='z') //应该是c<='z'

void main这个可以不算错误

#4 scanf( "%d%d", m, n ); --------- #4 scanf( "%d%d", &m, &n );
#5 if m < n ------------ if( m < n)
#6 k = 1 ------------- k = 1;

2.
#2 { int c; -------- { char c;
#5 if('0'<=c||c<='9') ----------- if(c >= '0' && c <= '9')
#7 else if('A'>=c&&c<='Z') --------- else if(c >= 'A'&&c<='Z')
#9 else if('a'<=c&&c>