C语言-简单的程序设计

news2025/1/10 3:18:26

🌞欢迎来到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 <stdio.h>
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 <stdio.h>
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 <stdio.h>
#include <math.h>
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 <stdio.h>
#include <math.h>
int main(void)
{
    char a, b;
    printf("a=:"); //提示输入。
    scanf("%c", &a);
    b=a+32;
    printf("a->%c",b);
	return 0;
 }

#include <stdio.h>
#include <math.h>
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<stdio.h> 
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 <stdio.h>
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 <stdio.h>
int main(void)
{ int i=1;
  int sum=0;
  while(i<=100)
    { sum=sum+i;
      i++;
	  }  
  printf("sum=%d",sum);
  return 0;
}

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

#include <stdio.h>
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 <stdio.h>
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 <stdio.h>
int main(void)
{
char ch;
for(;(ch=getchar())!='\n';)
{
    putchar(ch);
}
return 0;
}

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

#include <stdio.h>
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 <stdio.h>
int main(void)
{
int i;
for(i=101;;i++)
{
	if(i%47!=0)
	    continue;
	printf("%d",i);
	break;
}
return 0;
}

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

#include <stdio.h>
#include <math.h>
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");
else
   printf("N");
return 0;
}

(2)第二种方法

#include <stdio.h>
#include <math.h>
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");
else
   printf("Y");
return 0;
}

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

#include <stdio.h>
#include <math.h>
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;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/681.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker 网络

前言 随着容器的普及&#xff0c;经常使用docker创建容器来跑应用&#xff0c;结合开源的kubernetes和istio等&#xff0c;对于无状态的服务有极好的支持能力&#xff0c;秒级调度&#xff0c;弹性伸缩等优势。实际上kube的容器仅仅是接口&#xff0c;实际的容器可以是docker&…

布隆过滤器

文章目录前导布隆过滤器特点映射方式hash 函数BloomFiltersettestreset相关问题应用示例哈希切分例子今天是1024程序员节,祝各位节日快乐啦!!!前导 我们之前使用位图bitset,只能将一个整数映射到比特位上&#xff0c;来判断某个数是否存在 但是假如我们也想把判断一个字符串是…

【Linux】yum 与 vim 的基本使用

文章目录一、yum 背景知识1、商业生态2、开源生态3、软件生态本土化二、yum 的基本使用1、查看软件包2、安装软件3、卸载软件三、vim 的基本使用1、vim 的基本概念2、vim 的基本操作2.1 模式间切换2.2 光标定位2.3 文本复制2.4 文本编辑2.5 底行模式的操作四、简单 vim 配置2、…

前端工程化<npm、cnpm、yarn、npx、pnpm等包管理工具>

平时工作中&#xff0c;像npm、cnpm、yarn等一些工具都是经常经常用的&#xff0c;但可能对里面的一些细节都没太在意&#xff0c;所以这篇就来总结一下加深印象和理解。另外还有pnpm的使用&#xff0c;以及它的优势 1. npm包管理工具 包管理工具npm Node Package Manager&a…

『Halcon与C#混合编程』011_工业相机的SDK介绍

这里以淘宝上的显微精工店铺的相机为例(支持SDK) 一、相机的SDK简单介绍 第一步:安装好驱动,并能正常打开相机 第二部:找到相机的安装目录,查看厂家提供的Demo和开发手册 在Demo中找到C#的Demo,运行Demo.sln 第三步

基于Matlab使用粒子滤波器和高斯滤波器跟踪单个对象(附源码)

此示例说明了如何使用粒子滤波器和高斯和滤波器来跟踪使用仅范围测量的单个对象。 一、介绍 只能观察范围信息的传感器无法通过单次检测提供对物体状态的完整了解。此外&#xff0c;当以笛卡尔坐标系表示时&#xff0c;仅范围测量的不确定性是非高斯的&#xff0c;并产生凹形…

python作业8

目录 1.输入一个整数判断奇数偶数 2.判断一个数是否能被7或11整除但不能同时整除 3.判断某一年是否为闰年&#xff1a;能被4整除但不能被100整除&#xff0c;或者能被400整除 4.《车辆驾驶人员血液、呼气酒精含量阈值与检验》标准中规定&#xff1a;驾驶员血液酒精小于20mg/…

基于Hi3861的听话的狗子

听话的狗子一、项目介绍二、硬件介绍&#xff08;1&#xff09;Hi3861最小系统电路&#xff08;2&#xff09;电源管理电路&#xff08;3&#xff09;USB转串口电路烧录电路&#xff08;4&#xff09;外设接口电路三、PCB设计四、软件部分简介&#xff08;1&#xff09;代码整体…

在 ESP 开发板上开发 UI 不再复杂

如果您尝试过在没有图形库的情况下开发 UI&#xff0c;那么您一定知道这有多困难。幸运的是&#xff0c;由乐鑫芯片驱动的屏幕&#xff0c;可支持用户使用多种图形库来开发 UI&#xff0c; LVGL 就是其中之一。通常情况下&#xff0c;在使用 LVGL 或类似的图形库前&#xff0c;…

SPI、RS232、485、IIC通信协议详细总结

通信协议大全 文章目录通信协议大全前言一、异步通信和同步通信二、RS232和RS4851.RS2322.RS4853.RS232和RS485的区别4.RS232、485与普通串口的区别&#xff1f;三、SPI协议四、IIC协议1.IIC的时序介绍2.IIC传输数据的格式总结前言 通信协议是每一个嵌入式工程师必备的技能。下…

几道简单的Linux驱动相关面试题,你看你会几题?

一、Linux基础 1、任意3种网络操作的Linux命令,并说明他们的含义 1. ifconfig 命令 ifconfig 用于查看和配置 Linux 系统的网络接口。 查看所有网络接口及其状态&#xff1a;ifconfig -a 。 使用 up 和 down 命令启动或停止某个接口&#xff1a;ifconfig eth0 up 和 ifconfi…

WEB渗透扫描与加固

WEB渗透扫描与加固 1.通过PC2中渗透测试平台BackTrack5中的httprint工具对服务器场景Server2003检测HTTP服务器(调用signatures.txt), 并将该操作显示结果“Banner Reported:”之后的字符串作为FLAG提交; 切换路径至/pentest/enumeration/web/httprint下 使用命令./httpr…

阿里巴巴面试题- - -多线程并发篇(二十九)

前言:七月末八月初的时候,秋招正式打响,公司会放出大量的全职和实习岗位。为了帮助秋招的小伙伴们,学长这里整理了一系列的秋招面试题给大家,所以小伙伴们不用太过焦虑,相信你们一定能超常发挥,收到心仪公司的Offer~~ 内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Elast…

网络安全:技术趋势

下面列出了GlobalData确定的影响网络安全的关键技术趋势。 维护IT系统的安全性是各种类型组织的一项长期任务。网络攻击频繁且越来越复杂&#xff0c;由那些推动地缘政治事业的人或意图赚钱的攻击者实施。2021年&#xff0c;由于员工在疫情期间远程工作&#xff0c;企业在网络…

直流信号隔离采样

前言 最近在做一个案子&#xff0c;这个案子中的一点是高压电压信号隔离采样&#xff1b; 常见的隔离有&#xff1a; 光隔离&#xff08;光耦&#xff09; 磁隔离&#xff08;霍尔&#xff0c;变压器&#xff09; 等等。 那么要测量直流电压线性隔离如何实现&#xff1f;…

C语言中程序的环境和预处理简述

文章目录程序是如何执行的?翻译预编译条件编译文件的包含嵌套引用不同的引用方式预定义符号编译汇编链接运行程序是如何执行的? 有时候会问自己&#xff0c;程序的运行是那么简单的事情吗&#xff1f; 我鼠标点到 visual studio 上,程序就跑起来了&#xff0c;然后在界面就能…

项目管理:如何使用甘特图制定项目计划

甘特图能够很直观地显示项目任务、进度随着时间推进的进展情况。 横轴为时间&#xff0c;纵轴为项目事项&#xff0c;用条形图的方式直观地展现项目中所有任务的时间及进度。 它可以直观地表明项目中有哪些任务&#xff1f;任务计划在什么时候进行&#xff0c;及实际进展与计划…

基于Vue+node的图书馆座位预约选座管理系统

目 录 一、绪论 1 &#xff08;一&#xff09;选题背景简介 1 &#xff08;二&#xff09;目的和意义 2 &#xff08;三&#xff09;基本内容及目标 2 二 技术简介 4 &#xff08;一&#xff09; React 4 &#xff08;二&#xff09;Vue 4 &#xff08;三&#xff09;Egg.js 5 …

生产者消费者模型

什么是生产者消费者模型&#xff1f; 生产者和消费是操作系统中一种重要的模型&#xff0c;它描述的是一种等待和通知的机制。一、概念引入 日常生活中&#xff0c;每当我们缺少某些生活用品时&#xff0c;我们都会去超市进行购买&#xff0c;那么&#xff0c;你有没有想过&am…

Node.js之Hello World

目录 简介 1.安装 2.安装后的效果 3.准备尝试运行的代码 4.运行JS代码 5.访问正在运行的代码(Hello World) 简介 Node.js 是一个基于"Chrome V8 引擎" 的JavaScript "运行环境"&#xff1b; NodeJS不是一门编程语言, NodeJS是一个运行环境&#xff…