1. c语言 编写程序,从键盘输入一个整数,计算并输出它是几位数。若输入的是负数时,要求重新输入。
给你写了个,运行通过,你看看吧,记得采纳哦O(∩_∩)O~
#include<stdio.h>
int main(){
int num,i=0;
printf("please input a numble:");
while(1){
scanf("%d",&num);
if(num<0){
printf("this numble is below to 0,please input again:");
continue;
}
while(num>0){
num/=10;
i++;
}
break;
}
printf("It's width is %d",i);
}
2. C语言怎么实现输错了 重新输入
可以设置一个while循环在其体内输入数据,经判断输入正确则跳出循环,否则提示重新输入,直到输入正确。举例代码如下:
//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
intm[12]={31,28,31,30,31,30,31,31,30,31,30,31},year,month;
while(1){//这个循环就是解决输入错误的
printf("Pleaseentertheyear&month... ");
fflush(stdin);
if(scanf("%d%d",&year,&month)&&year>0&&month>0&&month<13)
break;
printf("Error,redo:");
}
m[1]+=year%4==0&&year%100!=0||year%400==0;
printf("%d/%dis%ddays. ",month,year,m[month-1]);
return0;
}
3. C语言问题,求大佬解答
【示例代码如下,用 中文c 编译】
#定义 最大输入个数 10000
整数类型 甲,个数=0, 输入数[最大输入个数],统计=0;
小数类型 和=0,平均值;
重复{
图形输入整数() => 甲;
如果( 甲 大于 0 ){
和 += 甲;
如果(个数 < 最大输入个数) 输入数[个数 ++] = 甲;
}
}直到 甲 等于 0;
图形输出词语(“输入的正整数个数为:”);
图形输出整数(个数,10);图形换行();
平均值 = 和 除 个数;
图形输出词语(“输入正整数的平均值为:”);
图形输出小数(平均值);图形换行();
步进循环(甲=0;甲<个数;甲++ ) 如果( 输入数[甲] > 平均值 ) 统计++;
图形输出词语(“大于平均值的正整数个数为:”);
图形输出整数(统计,10);图形换行();
【运行 结果如下图】
4. 如果成绩为负数时,显示“输入出错。请重新输入”用C语言怎么表达
摘要 程序可以这样写,加一个while循环:
5. C语言中是直接输入负数的吗
是的,可以直接输入负数。
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。
简介
C语言是一门面向过程的计算机编程语言,与C++、C#、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%-20%。因此,C语言可以编写系统软件。
当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。计算机系统设计以及应用程序编写是C语言应用的两大领域。同时,C语言的普适较强,在许多计算机操作系统中都能够得到适用,且效率显着。
6. C语言二维数组输入错误后怎么报错重新输入
数据输入错误,有两种情况:
1 输入的数据格式不正确,比如要求输入整型,但是输入了字符型。
这种情况,可以通过scanf的返回值进行判断,scanf的返回值是正确输入的变量个数。当返回值和要输入的变量个数不同时,则表示出错,要求重新输入。
2 输入的数据不在合法范围内。
比如要求输入正数,但输入了负数。这时需要判断输入的值是否合法。
以输入两个整数,要求范围在0~100之间的代码可以写作
int a,b,r;
while(1)//死循环,不得到正确输入不退出。
{
r = scanf("%d%d",&a,&b);
if(r == 2 && (a>=0 && a <= 100) && (b>=0 && b<=100)) break;//输入正确,退出循环。
printf("输入不正确,请重新输入\n");
fflush(stdin);//清空输入,这一步是必须的,不然出错的输入可能影响下次输入。
}
7. c语言中数据输入错误了如何提示输入错误并实现要求重新输入
可以使用清理输入流fflush(stdin);这个原因是因为错误输入的内容会保留在输入流,下一次判断会从输入流开始读取,因为错误输入的内容还在,所以直接判断错误,继续循环。
但有些编译器并不支持清理输入流。所以我们这时需要用手动输入让其清除。使用getchar();让其接收错误的字符。但这样就会变成这样,如果输入多个错误就会出现多个次数的循环;直至没有错误输入;这样如果循环内容多,所消耗的资源也就多了。
所以可以使用while()来执行里面的消除字符,但如果直接这样while(getchar())就会进入无限循环,所以可以让其接收一个终止条件,每次输入完都会按回车,那就让其接收' '换行符终止自己的循环。
(7)c语言输入负数重新输入扩展阅读
C语言从键盘输入数据
程序是人机交互的媒介,有输出必然也有输入。在C语言中,有多个函数可以从键盘获得用户输入:
scanf():和 printf() 类似,scanf() 可以输入多种类型的数据。
getchar()、getche()、getch():这三个函数都用于输入单个字符。
gets():获取一行数据,并作为字符串处理。
scanf() 是最灵活、最复杂、最常用的输入函数,但它不能完全取代其他函数,大家都要有所了解。scanf 是 scan format 的缩写,意思是格式化扫描,也就是从键盘获得用户输入。
gets() 会读取用户输入的整行内容,包括空格。而 scanf() 遇到空格就结束读取,也就是说,使用 scanf() 读取的字符串中永远不会包含空格。
8. c语言中数据输入错误了如何提示输入错误并实现要求重新输入
cin>>sth;
while(!check(sth))
{
//check
函数检查输入值,如果满足就不需要在输入,这是就返回1或者true
cout<<"enter
again,
because
it
is
invalidate"
cin>>sth;
}