1. 求最简单的c语言程序
#include<stdio.h>
main()
{
int a,b,t=0;
scanf("%d %d",&a,&b);
if (a<b)
{
t=a;
a=b;
b=t;
}
printf("%d %d %d %d %d",(a+b),(a-b),(a/b),(a*b),(a%b));
}
2. c语言中的程序
#include <stdio.h>
main()
{
char a[10]="";
int i,t;
printf("input a string:");
gets(a);
printf("before:");
puts(a);
for(i=0;i<10/2;i++)
{
t=a[i];
a[i]=a[9-i];
a[9-i]=t;
}
printf("after:");
for(i=0;i<10;i++)
printf("%c",a[i]);
}
3. 简单c语言程序
1、★编写程序,输入两个整数:1500和350,求出它们的商和余数并输出。
main()
{int
a;
int
b;
scanf("%d%d",a,b)
printf("商:%d\n余数:%d",a/b,a%b);
}
2、★编写程序,读入三个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,b中原来的值给c,
c中原来的值给a,且输出改变后的a,b,c的值
main()
{int
a;
int
b;
int
c;
int
tmp;
scanf("%d%d%d",a,b,c)
printf("a:%d
b:%d
c:%d",a,b,c);
tmp=c;
c=b;
b=a;
a=c;
printf("a:%d
b:%d
c:%d",a,b,c);
}
3、★输入两个整型变量a,b的值,输出a+b,a-b,a*b,a/b,(float)a/b,a%b的结果,要求连同算式一起输出,每个算式占一行。
main()
{int
a;
int
b;
scanf("%d%d",a,b)
printf("a+b=%d\na-b=%d\na*b=%d\na/b=%d\n(float)a/b=%f\na%b=%d",a+b,a-b,a*b,a/b,(float)a/b,a%b);
}
4、★输入一个非负数,计算以这个数为半径的圆周长和面积。
main()
{float
a;
scanf("%f",a);
printf("周长=%f\n面积=%f",2*a*3.14,3.14*a*a);
}
5、★输入任意一个三位数,将其各位数字反序输出(例如输入123,输出321).
main()
{int
a;
int
b;
scanf("%d",a);
printf("%d",a%10);
a=a%100
printf("%d",a%10);
a=a%10
printf("%d",a%10);
}
6、★输入任意大小的三个整数,判断其中是否有两个奇数一个偶数。若是,则输出“YES”,不是则输出“NOT”
(要求用条件表达式进行判断,不使用if语句)
main()
{int
a;
int
b;
int
c;
int
n=0;
scanf("%d%d%d",a,b,c);
a%2==1?n++:a;
b%2==1?n++:b;
c%2==1?n++:c;
if
n==2
printf("YES");
else
printf("NOT");
}
7、★求前驱字符和后继字符。输入一个字符,找出它的前驱字符和后继字符,并按ASCII码值,按从大到小的顺序输出这三个字符及其对应的ASCII码值。
main()
{char
a;
scanf("%c",a);
printf("%c%c%c"a-1,a,a+1);
}
累啊
4. 求简单C语言程序代码!
输入2个正整数m和n,求其最大公约数和最小公倍数
#include
#include
int main()
int m,n,p,q,s,r;
printf("请输入两个正整数;m,n ");
scanf("%d,%d",&m,&n);
#include<stdio.h>
main()
int a,b,t=0;
scanf("%d %d",&a,&b);
if (a<b)
printf("%d %d %d %d %d",(a+b),(a-b),(a/b),(a*b),(a%b));
}
主要特点
C语言是一种结构化语言,它有着清晰的层次,可按照模块的方式对程序进行编写,十分有利于程序的调试,且c语言的处理和表现能力都非常的强大,依靠非常全面的运算符和多样的数据类型,可以轻易完成各种数据结构的构建,通过指针类型更可对内存直接寻址以及对硬件进行直接操作,因此既能够用于开发系统程序,也可用于开发应用软件。
以上内容参考:网络-c语言
5. C语言是什么意思
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。
目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
(5)c语言中等程序扩展阅读:
C语言的优势:
1.相比较其他的编程语言(像C++,JAVA),C语言是个低级语言。从总体上来说,低级的编程语言可以让你更好的了解计算机。
2.设备驱动程序和操作系统只能用C语言来编写。现在,你可能还从来没有编写过一个设备驱动程序或者一个操作系统,但是如果你需要去修改他们的时候,怎么办?
3.如果你想要得到一份编写微控制器程序的工作的时候,该怎么办?他们都是用C语言编写的。就因为不想学习一门新的语言,你就准备限制你能得到工作的机会吗?
4.C的程序比其他用别的语言写的程序,实现相同的功能,它用的代码行数更少,而它带来的运行效率更快。有时候,你的程序所需要的速度,只有C语言能做到。
5.如果你学习过C语言,你就能学习现在任何的高级编程语言。因为所有的高级语言都是以C语言为基础的(像JAVA,C++,C#等等)。
6.因为C语言已经存在很多年了,它有广泛的使用团体并且有大量的现成代码可以利用。这就使你能在过去程序的基础上,快速和高效的编写新的算法和函数。
7.C语言是一个开源组织的语言。一个开源组织的产物--LINUX,就是用C语言写的。如果你会C语言,你就能参加这个组织并且还能向众多的开源组织投稿,比如参加Source Forge并且给他们投稿。
8.C语言是唯一一个向你阐述指针的本质的语言。而C#和Java干脆跳过了指针这个题目。可是指针确实使C语言变得更加强大。
9.找编程开发方面的工作时,C语言仍然是最普遍需要的语言。所以它值得你花时间去学会它。
10.任何里面有微处理器的设备都支持C语言。从微波炉到手机,都是由C语言技术来推动的。
6. C语言中等难度编程题目2题
#include <stdio.h>
void main()
{int num_10,changenum ;
int stack[10]={0};
int top=0;
while(1){
top =0;
printf("\ninput you will change number:\n");
scanf("%d",&num_10);
printf("you will change %d to \n",num_10);
scanf("%d",&changenum);
do{
stack[top++]=num_10%changenum;
num_10/=changenum;
}while (num_10) ;
top --;
while(top>=0)
{ if(stack[top]<10)
printf("%d",stack[top]);
else if( stack[top]>=10&&stack[top]<16)
{
switch (stack[top])
{
case 10:printf("A"); break;
case 11:printf("B"); break;
case 12:printf("C");break;
case 13:printf("D");break;
case 14:printf("E");break;
case 15:printf("F");break;
}
}
top--;
}
}
getch();
}
7. 怎么才能用c语言中的指针与数组做一个中等的项目
数组和指针的关系
一、数组的数组名其实可以看作一个指针。看下例:
例1:
int array[10]=,value;
value=array[0];//也可写成:value=*array;
value=array[3];//也可写成:value=*(array+3);
value=array[4];//也可写成:value=*(array+4);
上例中,一般而言数组名array代表数组本身,类型是int [10],但如果把array看做指针的话,它指向数组的第0个单元,类型是int *,所指向的类型是数组单元的类型即int。因此*array等于0就一点也不奇怪了。同理,array+3是一个指向数组第3个单元的指针,所以*(array+3)等于3。其它依此类推。
二、指针数组的定义及使用
例2:
char *str[3]={ //注意指针数组的定义及初始化格式
"Hello,this is a sample!",
"Hi,good morning.",
"Hello world"
};
char s[80];
strcpy(s,str[0]);//也可写成strcpy(s,*str);
strcpy(s,str[1]);//也可写成strcpy(s,*(str+1));
strcpy(s,str[2]);//也可写成strcpy(s,*(str+2));
上例中,str是一个三单元的数组,该数组的每个单元都是一个指针,这些指针各指向一个字符串。把指针数组名str当作一个指针的话,它指向数组的第0号单元,它的类型是char**,它指向的类型是char *。
*str也是一个指针,它的类型是char*,它所指向的类型是char,它指向的地址是字符串"Hello,this is a sample!"的第一个字符的地址,即'H'的地址。 str+1也是一个指针,它指向数组的第1号单元,它的类型是char**,它指向的类型是char *。
*(str+1)也是一个指针,它的类型是char*,它所指向的类型是char,它指向"Hi,good morning."的第一个字符'H',等等。
三、数组名小结:
声明了一个数组TYPE array[n],则数组名称array就有了两重含义:第一,它代表整个数组,它的类型是TYPE [n];第二,它是一个指针,该指针的类型是TYPE*,该指针指向的类型是TYPE,也就是数组单元的类型,该指针指向的内存区就是数组第0号单元,该指针自己占有单独的内存区,注意它和数组第0号单元占据的内存区是不同的。该指针的值是不能修改的,即类似array++的表达式是错误的。
在不同的表达式中数组名array可以扮演不同的角色。
(1)在表达式sizeof(array)中,数组名array代表数组本身,故这时sizeof函数测出的是整个数组的大小。
(2)在表达式*array中,array扮演的是指针,因此这个表达式的结果就是数组第0号单元的值。sizeof(*array)测出的是数组单元的大小。
(3)表达式array+n(其中n=0,1,2,....。)中,array扮演的是指针,故array+n的结果是一个指针,它的类型是TYPE*,它指向的类型是TYPE,它指向数组第n号单元。故sizeof(array+n)测出的是指针类型的大小。
四、数组指针的定义及使用:
例3:
int array[10];
int (*ptr)[10]; //数组指针ptr,指向一个数组int[10]
ptr=&array;
上例中ptr是一个指针,它的类型是int (*)[10],他指向的类型是int [10],我们用整个数组的首地址来初始化它。在语句ptr=&array中,array代表数组本身。
五、对指针和数组执行sizeof操作的结果:
sizeof(指针名称)测出的究竟是指针自身类型的大小呢还是指针所指向的类型的大小?答案是前者。例如:
int (*ptr)[10];
则在32位程序中,有:
sizeof(int(*)[10])==4
sizeof(int [10])==40
sizeof(ptr)==4
实际上,sizeof(对象)测出的都是对象自身的类型的大小,而不是别的什么类型的大小。
8. 请C语言中等水平以上的来
代码:
#include <stdio.h>
#include <string.h>
void main()
{
struct pu
{
char name[8];
char sex[2];
float a1;
float a2;
float a3;
}s[3];
int mindex1=0,mindex2=0,mindex3=0,mindext=0;
float total[3];
int i;
for (i=0;i<3;i++)
{
printf("姓名:");
scanf("%s",s[i].name);
l: printf("性别:男(M)/女(F)");
char t;
scanf("%s",&t);
if (t=='M' || t=='m') strcpy(s[i].sex,"男");
else if (t=='F' || t=='f') strcpy(s[i].sex,"女");
else goto l;
total[i]=0;
printf("英语成绩:");
scanf("%f",&s[i].a1);
total[i]+=s[i].a1;
if (s[i].a1>s[mindex1].a1) mindex1=i;
printf("数学成绩:");
scanf("%f",&s[i].a2);
total[i]+=s[i].a2;
if (s[i].a2>s[mindex2].a2) mindex2=i;
printf("语文成绩:");
scanf("%f",&s[i].a3);
total[i]+=s[i].a3;
if (s[i].a3>s[mindex3].a3) mindex3=i;
if (total[i]>total[mindext]) mindext=i;
}
printf("\t英语\t数学\t语文\t总成绩\t平均成绩\n");
for (i=0;i<3;i++)
{
printf("%d:%s\t%3.2f\t%3.2f\t%3.2f\t%3.2f\t%3.2f\n",i+1,s[i].name,s[i].a1,s[i].a2,s[i].a3,total[i],total[i]/3);
}
printf("最高分:\n");
printf("\t英语:%3.2f (%d:%s)\n\t数学:%3.2f (%d:%s)\n\t语文:%3.2f (%d:%s)\n\t总成绩:%3.2f (%d:%s)\n\t平均成绩:%3.2f (%d:%s)",s[mindex1].a1,mindex1+1,s[mindex1].name,s[mindex2].a2,mindex2+1,s[mindex2].name,s[mindex3].a3,mindex3+1,s[mindex3].name,total[mindext],mindext+1,s[mindext].name,total[mindext]/3,mindext+1,s[mindext].name);
}
测试样例:
姓名:张三
性别:男(M)/女(F)m
英语成绩:35
数学成绩:64
语文成绩:66
姓名:李四
性别:男(M)/女(F)f
英语成绩:75
数学成绩:54
语文成绩:64
姓名:王五
性别:男(M)/女(F)m
英语成绩:53
数学成绩:45
语文成绩:75
英语 数学 语文 总成绩 平均成绩
1:张三 35.00 64.00 66.00 165.00 55.00
2:李四 75.00 54.00 64.00 193.00 64.33
3:王五 53.00 45.00 75.00 173.00 57.67
最高分:
英语:75.00 (2:李四)
数学:64.00 (1:张三)
语文:75.00 (3:王五)
总成绩:193.00 (2:李四)
平均成绩:64.33 (2:李四)
学号字段最好还是设计一下,这里采用自然下标了。
那个“性别”提干好像没要求,是为了增加难度吗?不过还是小儿科了一点。
9. 一个简单的c语言程序
很多程序都是非常简单的:
1.输入2个正整数m和n,求其最大公约数和最小公倍数
#include<stdio.h>
#include<math.h>
int main()
{
int m,n,p,q,s,r;
printf("请输入两个正整数;m,n\n");
scanf("%d,%d",&m,&n);
s=m*n;
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<stdio.h>
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<stdio.h>
int main(void)
{
int sum,i,term;
sum=0;
term=1;
for(i=1;i<=10;i++)
{
term=term*i;
sum=sum+term;
printf("%d的阶乘 %d\n",i,term);
}
printf("1到10各数阶乘的和 %d\n",sum);
return 0;
}
4.使用嵌套循环产生下列由大写字母组成的图
#include<stdio.h>
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<stdio.h>
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<stdio.h>
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<stdio.h>
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=sum*x;
return sum;
}
8.输入一个3位整数,输出它的逆序数。例如,输入127,输出应该是721。
#include<stdio.h>
int main(void)
{
int x,y;
scanf("%d",&x);
y=x/100+x/10%10*10+x%10*100;
printf("%d的逆序数 %d\n",x,y);
return 0;
}
10. 自学C语言到中等水平需要什么条件,大概需要多久
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。打好基础,然后就是看关于C语言实例的书了,大概半年就能行。