C语言-简单的程序设计
创始人
2024-01-16 19:43:19
0

🌞欢迎来到C语言的世界 
🌈博客主页:卿云阁

💌欢迎关注🎉点赞👍收藏⭐️留言📝

🌟本文由卿云阁原创!

🌠本阶段属于练气阶段,希望各位仙友顺利完成突破

📆首发时间:🌹2021年10月20日🌹

✉️希望可以和大家一起完成进阶之路!

🙏作者水平很有限,如果发现错误,请留言轰炸哦!万分感谢!


目录

🍈 字符输入函数getchar

 🍉字符输出函数putchar

🍊格式输入函数scanf

🍋顺序结构程序设计

🥒选择结构

🥬循环结构

🍈 字符输入函数getchar

       当C程序执行到getchar();这条语句时,如果缓冲区中没有字符,则等待用户输入,用户输入的字符被存放在缓冲区中,当用户键入Enter键之后,getchar从缓冲区开始取走一个字符并返回该字符的ASCII码值或EOF字符。

        例如顺序从键盘键入ABC三个字符,最后键入一个Enter键(在windows操作系统中,Enter键表示了两个字符'\r'和'\n',在linux系统中,只是一个字符'\n'),如果是windows系统,缓存区中就得到了四个字符('\r'为回车字符,用于触发getchar执行)。

      当缓冲区有数据时,getchar从缓冲区顺序取出一个字符。例如有char ch; ch=getchar();,getchar从缓冲区取出字符的ASCII值并赋给ch。


 🍉字符输出函数putchar

从键盘输入一个字符,并输出到显示器中。

#include 
int main(void)
{ 
char ch;
printf("please input a char:\n"); //这是一条表达式语句,最后有;,下同。
ch=getchar(); //程序执行到此处时,等待用户输入字符,最后按Enter键。//Enter键结束后,getchar()从缓冲区得到字符并赋给ch。      
putchar(ch);  // 把ch输出到显示器中。
putchar('\n');  //输出一个换行符常量。
return 0;
}

🍉

     这里键入一个字符a和Enter键,这个Enter键代表的字符也会进入缓存区,如果要在程序中用getchar输入两个字符'A','B'分别给ch1和ch2变量时,正确的键入是AB+enter,而不是输入A+enter和B+enter。


🍊格式输入函数scanf

#从键盘上输入两个数分别赋给a,b

# include 
int main(void)
{int a, b;printf("Please enter two integers separated by a space:\n"); //提示输入。scanf("%d%d", &a, &b);printf("a= %d, b=%d\n", a , b);return 0;}

🍊


🍋顺序结构程序设计

#include 
#include 
int main(void)
{float a, b,c;float s,area;printf("Please enter the side lengths a, b, c of the triangle:\n"); //提示输入。scanf("%f%f%f", &a,&b,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf("area=%-7.2f",area);return 0;}

 2.从键盘输入一个英文大写字母,要求改用小写字母输出。

#include 
#include 
int main(void)
{char a, b;printf("a=:"); //提示输入。scanf("%c", &a);b=a+32;printf("a->%c",b);return 0;}

#include 
#include 
int main(void) 
{
float a,b,c,disc,x1,x2,p,q;  // disc存放的结果。
printf("Please enter a, b, and c, separated by spaces:\n");
scanf("%f%f%f",&a,&b,&c);
disc=b*b-4*a*c;
p=-b/(2*a);
q=(float)sqrt(disc)/(2*a); // sqrt得到的值是double型,转换成float。
x1=p+q;
x2=p-q;
printf("\nx1=%5.2f\nx2=%5.2f\n",x1,x2);
return 0;
}

 


🥒选择结构

例1 输入两个int型数据,输出它们中的较大者。

#include 
int main()
{   int a,b,max;printf("请输入两个数a,b:");scanf("%d%d",&a,&b);a=max;if(b>a)max=b;printf("max=%d",max);
}

例4输入一个整型分数,如果分数在90-100分,输出“优”,80-89,输出“良”,60-79,输出“及格”,60分以下输出“不及格”,用switch语句实现编程(假设分数是区间[0,100]上的整数)。

#include 
int main(void)
{int score;scanf("%d",&score);
switch(score/10)
{case 10:    case 9: printf("优\n");break;
case 8: printf("良\n");break;
case 7:
case 6: printf("及格\n");break;default: printf("不及格\n");
}
return 0;
}

🥬循环结构

求1+2+3+...100的值

#include 
int main(void)
{ int i=1;int sum=0;while(i<=100){ sum=sum+i;i++;}  printf("sum=%d",sum);return 0;
}

例:统计从键盘输入的一行字符的个数。

#include 
int main(void)
{
unsigned charNum=0;  //用于统计字符的个数,初始化为0。
printf("Input a string:");
while(getchar()!='\n')  //把从键盘获取的字符与'\n'比较形成表达式。
charNum ++;
printf("Number of characters: %u\n", charNum);
return 0;
}

例5-3-2 用for语句输出斐波那契数列(Fibonacci Sequence)的前10个数。

include 
int main(void)
{
int predata=1;
int nextdata=1;
int i,temp;
printf("%d %d ",predata,nextdata);
for(i=3;i<=10;i++)
{temp=nextdata;nextdata=predata+nextdata;predata=temp;printf("%d ",nextdata);
}
return 0;
}

 

用for语句实现从键盘输入一组字符,并输出出来。 

#include 
int main(void)
{
char ch;
for(;(ch=getchar())!='\n';)
{putchar(ch);
}
return 0;
}

求出用 50元、20元 和 10元换100元有几种方式

#include 
int main(void)
{
int i,j,z;
for(i=0;i<=2;i++)for(j=0;j<=5;j++)for(z=0;z<=10;z++){if(100==50*i+20*j+10*z)printf("i=%d j=%d z=%d\n",i,j,z);}
return 0;
}

找出一个比100大且能被47整除的整数,并输出

#include 
int main(void)
{
int i;
for(i=101;;i++)
{if(i%47!=0)continue;printf("%d",i);break;
}
return 0;
}

从键盘输入一个整数,判断是否为素数,是就输出Y,不是就输出N

#include 
#include 
int main(void)
{
int m,k,i;
printf("m:");
scanf("%d",&m);
k=(int)sqrt(m);
for(i=2;i<=k;i++)
{if(m%i==0)break;
}
if(i>k)printf("N");
elseprintf("N");
return 0;
}

(2)第二种方法

#include 
#include 
int main(void)
{
int m,k,i;
int flag=0;
printf("m:");
scanf("%d",&m);
k=(int)sqrt(m);
for(i=2;i<=k;i++)
{if(m%i==0){flag=1;break;}
}
if(flag=1)printf("N");
elseprintf("Y");
return 0;
}

找出100到200之间的素数,并它们输出出来

#include 
#include 
int main(void)
{
int m,k,i,j;
for(m=100;m<=200;m++)
{
int flag=0;
k=(int)sqrt(m);
for(i=2;i<=k;i++)
{if(m%i==0){flag=1;break;}
}
if(flag!=1)printf("m=%d\n",m);
}
return 0;
}

相关内容

热门资讯

国庆节朗诵稿 国庆节朗诵稿  在我们上学期间,大家对朗诵稿都再熟悉不过了吧,朗诵是口语交际的一种重要形式。你知道什...
运动会广播稿100字:致短跑...   1.间的成败 ——致百米运动员  红色的跑道,承载着多少汗水,一条红线,记载着多少成败。  一次...
万能开会发言稿 万能开会发言稿公司开会,肯定是需要提前做好准备的,也要准备好要说的话,或是发言稿,万能开会发言稿。万...
《要下雨了》说课稿 小学语文一年级下册《要下雨了》说课稿范文  作为一名老师,时常需要编写说课稿,说课稿有助于学生理解并...
运动会加油稿 运动会加油稿20字  导语:运动会少不了加油,简单的一句话,可以给予运动会无限的力量。下面是为大家的...
小学语文《数字歌》说课稿 小学语文《数字歌》说课稿  【说教材】  我说的是九年义务教育新课程北师大版语文一年级上册第三单元《...
高三百日誓师领导发言稿 高三百日誓师领导发言稿  在不断进步的时代,发言稿使用的情况越来越多,发言稿可以帮助发言者更好的表达...
小学经典美文朗诵稿 通过朗诵可以陶冶性情,开阔胸怀,文明言行,增强理解。下面是大学网小编为大家整理了小学经典美文朗诵稿,...
《角的度量》四年级说课稿 《角的度量》四年级说课稿  一、说教材  (一)说课内容:  (四年级上册第18—19页)  (二)...
一年级家长会班主任发言稿 一年级家长会班主任发言稿(精选10篇)  在充满活力,日益开放的今天,在很多情况下我们需要用到发言稿...
高中体育《武术初级长拳》说课... 高中体育《武术初级长拳》说课稿  很多老师不知道说课稿怎么写?格式是怎么样的?下面YJBYS小编为大...
《初识“WPS演示”》教学反... 《初识“WPS演示”》教学反思本次教学结束后,我进行了深刻的教学反思。本课是学生学习WPS演示的第一...
小学运动会通讯稿 小学运动会通讯稿(通用7篇)  通讯,是运用记叙、描写、抒情、议论等多种手法,具体、生动、形象地反映...
运动会通讯稿20字左右   运动会的每个参与者都值得我们尊敬,以下是小编推荐的运动会通讯稿20字左右,欢迎阅读!  1、致长...
《我的叔叔于勒》说课稿 《我的叔叔于勒》说课稿(精选5篇)  作为一位兢兢业业的人民教师,就难以避免地要准备说课稿,借助说课...
一年级新少先队员代表发言稿   以下是小编整理的新少先队员代表发言稿,欢迎阅读。  篇一:新少先队员代表发言稿  敬爱的老师、亲...
《狼牙山五壮士》语文说课稿 《狼牙山五壮士》语文说课稿  “狼牙山五壮士”是指在抗日战争时期,在河北省易县狼牙山战斗中英勇抗击日...
高中生国旗下讲话稿主题   国旗随着雄壮的国歌在校园中冉冉升起,整个校园弥漫着庄严肃穆的氛围,能够激发学生发自内心的高尚情感...
抒情朗诵稿件1分钟 抒情朗诵稿件1分钟  抒情朗诵有哪些形式  1、自由朗读。  自由朗读,是断断续续的,是反反复复的,...
国庆节主题国旗下讲话稿 国庆节主题国旗下讲话稿  不知不觉又到了一年一度的国庆节了,这是一个举国同庆的节日,这是祖国的生日,...