1 c语言是面向过程的语言,可以理解为一个函数调用另一个函数的语言,其中程序的入口是main函数
2 示例
#include<stdioh> //包含要用到的函数的头文件,如printfint max(int a, int b);//函数声明
int main(){//程序入口函数
int a = 12, b = 9;
int m = max(a, b);//函数调用
printf("max=%d\n", m);
getchar();
return 0;
}
int max(int a, int b){//函数定义
return a > b a : b;
}
3 运行结果
程序源码及运行结果如下所示(系统会自动去掉句首空格,排版较乱请见谅):
#include<stdioh>
int main()
{
int max,min;
int sum=0;
printf("请输入一个整数:");
scanf("%d",&max);
printf("请再输入一个整数:");
scanf("%d",&min);
if(min>max)
{
int temp;
temp = max;
max = min;
min = temp;
}
for(int i=min;i<=max;i++)
{
sum += i;
}
printf("两数之间的整数和是:%d\n",sum);
return 0;
}
您好,很高兴回答您的问题。
在C语言中,无论是什么样程度的代码程序,都包含有以下几个方面:
宏定义(或者包含的头文件,视情况而定)
函数返回值类型 主函数(类型 变量)
{变量定义或者初始化;
输入语句;
计算语句;
输出语句;
}
函数返回值类型 函数名(类型 变量,类型 变量,。。。)(自定义函数视情况而定)
{变量定义或者初始化;
输入语句;
计算语句;
输出语句;
}
之所以实现不了,是因为你用if(d==1)来判断。此时IF 已经结束了。你这里再输入d 是没有任何用处的。如果改成 while(d == 1)就可以。不过我不建议你这种编程风格。main函数应该尽量精简。还有,出错判断要多做。如果我故意输错成字母。这时你该怎么解决?
1输入2个正整数m和n,求其最大公约数和最小公倍数
#include<stdioh>
#include<mathh>
int main()
{
int m,n,p,q,s,r;
printf("请输入两个正整数;m,n\n");
scanf("%d,%d",&m,&n);
s=mn;
if(m<n)
{
p=m;
m=n;
n=p;
}
printf("%d\t%d\n",m,n);/按从大到小输出m,n /
while(n!=0)
{
q=m%n;
m=n;
n=q;
}
/是不是m才是最大公约数啊/
r=s/m;
printf("m和n最大公约数为 %d\n",m);
printf("m和n最小公倍数为 %d\n",r);/m和n的积除以m和n的最大公约数即为最小公倍数/
return 0;
}
2输出100以内能被3整除且个位数为6的所有整数。
#include<stdioh>
int main(void)
{
int i;
for(i=1;i<=100;i++)
if(i%3==0&&i%10==6)printf("%d ",i);
return 0;
}
3 编程计算从1到10各数阶乘的和,即1! + 2! + 3! + …… + 9! + 10! 的和
#include<stdioh>
int main(void)
{
int sum,i,term;
sum=0;
term=1;
for(i=1;i<=10;i++)
{
term=termi;
sum=sum+term;
printf("%d的阶乘 %d\n",i,term);
}
printf("1到10各数阶乘的和 %d\n",sum);
return 0;
}
4使用嵌套循环产生下列由大写字母组成的图
#include<stdioh>
int main(void)
{
char ch1,ch2;
for(ch1='A';ch1<='Z';ch1++)
{
for(ch2='A';ch2<=ch1;ch2++)
printf("%c",ch2);
printf("\n");
}
return 0;
}
5 编程输出所有三位数中的素数。
#include<stdioh>
int main(void)
{
int x,i;
for(x=100;x<=999;x++)
{
for(i=2;i<x/2;i++)
if(x%i==0)break;
if(i==x/2)printf("%d ",x);
}
return 0;
}
6 定义一个函数even(),判断一个整数是否是偶数。如果是偶数返回1,否则返回0。(要求包括能使程序正常运行的主函数)
#include<stdioh>
int main(void)
{
int even(int);
int x,y;
scanf("%d",&x);
y=even(x);
if(y==1)
printf("%d 是偶数\n",x);
else
printf("%d 是奇数\n",x);
return 0;
}
int even(int x)
{
if(x%2==0)
return 1;
else
return 0;
}
7 编写函数mypow,求整型变量x的y次方。(要求包括能使程序正常运行的主函数)
#include<stdioh>
int main(void)
{
int mypow(int,int);
int x,y,s;
scanf("%d%d",&x,&y);
s=mypow(x,y);
printf("%d的%d次方是 %d\n",x,y,s);
return 0;
}
int mypow(int x,int y)
{
int sum,i;
sum=1;
for(i=1;i<=y;i++)
sum=sumx;
return sum;
}
8输入一个3位整数,输出它的逆序数。例如,输入127,输出应该是721。
#include<stdioh>
int main(void)
{
int x,y;
scanf("%d",&x);
y=x/100+x/10%1010+x%10100;
printf("%d的逆序数 %d\n",x,y);
return 0;
}
9 编写一个字符串连接函数,其功能是将两个字符串连接起来形成一个新的字符串,以实现库函数strcat()的功能
#include<stdioh>
int main(void)
{
void mystrcat(char s1[],char s2[]);
char s1[80],s2[80];
scanf("%s%s",s1,s2);
mystrcat(s1,s2);
printf("%s\n",s1);
return 0;
}
void mystrcat(char s1[],char s2[])
{
int i,j;
for(i=0;s1[i]!='\0';i++);
for(j=0;s2[j-1]!='\0';j++)s1[i+j]=s2[j];
}
10 编写一个字符串复制函数,其功能是将字符数组s2中的全部字符(包括字符串结束符号'\0')拷贝到字符数组 s1 中,以实现库函数strcpy()的功能。
#include<stdioh>
int main(void)
{
void mystrcpy(char s1[],char s2[]);
char s1[80],s2[80];
scanf("%s",s2);
mystrcpy(s1,s2);
printf("%s\n",s1);
return 0;
}
void mystrcpy(char s1[],char s2[])
{
int i;
for(i=0;s2[i-1]!='\0';i++)
s1[i]=s2[i];
}
11有一字符串,包含n个字符。写一函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串
#include<stdioh>
int main(void)
{
void mystrcpy2(char s1[],char s2[],int m,int n);
char s1[80],s2[80];
int m,n;
scanf("%d%d",&m,&n);
scanf("%s",s1);
mystrcpy2(s1,s2,m,n);
printf("s1: %s\ns2: %s\n",s1,s2);
return 0;
}
void mystrcpy2(char s1[],char s2[],int m,int n)
{
int i,j;
for(i=m-1,j=0;i<n&&s1[i]!='\0';i++)
s2[j++]=s1[i];
s2[j]='\0';
}
1)int
panduan(int
a,int
b,int
c)
{
int
m;
m=bb-4ac;
return(m);
}
void
main()
{int
a,b,c,flag,x1,x2,ture,virture;
printf("请依次输入二次方程的系数,空格隔开\n”);
scanf("%d
%d
%d",&a,&b,&c);
flag=panduan(a,b,c);
if(flag>0)
{x1=(-b+sqr(flag))/(2a);
x2=(-b-sqr(flag))/(2a);
printf("两个不相等的实根为:x1=%d,x2=%d",x1,x2);
}
else
if(flag==0)
{x1=-b/(2a);
printf("两个相等的实根为:x1=x2=%d",x1);
}
else
{ture=-b/(2a);
virture=sqr(-flag)/(2a);
printf("两个不相等的虚根为:x1=%d+%di,x2=%d-%di",ture,virture,ture,virture);
}
}
2)
int
sign(int
n)
{
return
n>=01:-1;
}
主函数调用即可。
3)
int
BaoShu(int
totalNum,
int
Num)
//totalNUm总人数,Num报的数字。
{
return
(Num%totalNum==0)totalNum:Num%totalNum;
}
主函数调用即可
最简单的模拟计时器:
#include<stdioh>
#include<conioh>
#include<windowsh>
int m=0,s=0,ms=0; //m是分 s是秒 ms是毫秒
//以下是5个自编函数
void csh( ); //初始化界面
void yinc(int x,int y); //隐藏光标的函数(y值设为0就会隐藏)
void jishi( ); //计时器运行(每100毫秒变化一次)
void Color (short x, short y); //设定颜色的函数(y设为0就是黑底)
void gtxy (int x, int y); //控制光标位置的函数
int main( ) //主函数
{ csh( );
getch( );
while(1)
{ jishi( );
Sleep(100); //间隔100毫秒
if( kbhit( ) )break; //有键按下就退出循环
}
return 0;
}
void csh( ) //初始化界面
{Color(14,0); //设定淡黄字配黑底
printf(“\n\n\t 计时器”);
Color(10,0); //设定淡绿字配黑底
printf("\n\t┌───────────┐");
printf("\n\t│ │");
printf("\n\t└───────────┘");
gtxy(10,4); //光标到屏幕第10列4行处输出
Color(7,0); //恢复白字黑底
printf(" 00:00:00 ");
yinc(1,0 ); //隐藏光标(yinc代表隐藏)
return;
}
void jishi( ) //计时器运行
{ms+=1;
if(ms==10){s+=1;ms=0;}
if(s==60){m+=1;s=0;}
gtxy(10,4);
Color(9,0); //设定淡蓝字配黑底
if(m>9) printf(" %d:",m);
else printf(" 0%d:",m);
Color(14,0); //设定淡黄字配黑底
if(s>9) printf("%d:",s);
else printf("0%d:",s);
Color(12,0); //设定淡红字配黑底
printf("0%d",ms);
}
void gtxy (int x, int y) //控制光标位置的函数
{ COORD pos;
posX = x;
posY = y;
SetConsoleCursorPosition ( GetStdHandle (STD_OUTPUT_HANDLE), pos );
}
void Color (short ForeColor= 7, short BackGroundColor= 0) //设定颜色的函数
{ HANDLE handle = GetStdHandle ( STD_OUTPUT_HANDLE );
SetConsoleTextAttribute ( handle, ForeColor + BackGroundColor 0x10 );
}
void yinc(int x,int y) //隐藏光标的设置(gb代表光标)
{ CONSOLE_CURSOR_INFO gb={x,y}; //x为1-100,y为0就隐藏光标
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &gb);
}
以上就是关于C语言简单例子全部的内容,包括:C语言简单例子、求简单C语言程序代码!、请描述一下一个简单的C语言源程序代码都包括哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)