c语言基础代码,越详细,解释越简单,越好
你并没有把详细的 C 语言基础代码写出来,别人怎么帮助你添加注释语句啊?因为所说的 C 语言基础代码实际上并没有一定之规。怎么样才算是基础代码、有几行代码就可以、足够了?这些都是灵活的、并不是一成不变的。例如,最、最简单的 C 语言基础代码就是:很多 C 语言教材上的第一个程序,输出:"Hello, World !"。该详细的 C 语言代码如下:
#include stdio.h /* 基本输入输出头文件,包括:printf、scanf等的库函数原型说明 */
void main( ) /* 任何一个 C 语言源代码都必须包含主函数 main( ),void 表示该函数不返回任何值 */
{ /* 在 C 语言代码中,任何一个函数都是以 { 开始,并且以 } 结束 */
printf( "Hello, World !\n" ) ; /* 在电脑屏幕上输出字符串:Hello, World */
}
最简单的c语言编程
很多程序都是非常简单的:
1.输入2个正整数m和n,求其最大公约数和最小公倍数
#includestdio.h
#includemath.h
int main()
{
int m,n,p,q,s,r;
printf("请输入两个正整数;m,n\n");
scanf("%d,%d",m,n);
s=m*n;
if(mn)
{
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的所有整数。
#includestdio.h
int main(void)
{
int i;
for(i=1;i=100;i++)
if(i%3==0i%10==6)printf("%d ",i);
return 0;
}
3. 编程计算从1到10各数阶乘的和,即1! + 2! + 3! + …… + 9! + 10! 的和
#includestdio.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.使用嵌套循环产生下列由大写字母组成的图
#includestdio.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. 编程输出所有三位数中的素数。
#includestdio.h
int main(void)
{
int x,i;
for(x=100;x=999;x++)
{
for(i=2;ix/2;i++)
if(x%i==0)break;
if(i==x/2)printf("%d ",x);
}
return 0;
}
6. 定义一个函数even(),判断一个整数是否是偶数。如果是偶数返回1,否则返回0。(要求包括能使程序正常运行的主函数)
#includestdio.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次方。(要求包括能使程序正常运行的主函数)
#includestdio.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。
#includestdio.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;
}
求几个比较有趣,简单的C语言源代码 小白自己敲着练一下手感
最简单的模拟计时器:
#includestdio.h
#includeconio.h
#includewindows.h
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(m9) printf(" %d:",m);
else printf(" 0%d:",m);
Color(14,0); //设定淡黄字配黑底
if(s9) printf("%d:",s);
else printf("0%d:",s);
Color(12,0); //设定淡红字配黑底
printf("0%d",ms);
}
void gtxy (int x, int y) //控制光标位置的函数
{ COORD pos;
pos.X = x;
pos.Y = 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语言代码
#include stdio.h
int main()
{
double a,b,c;
scanf("%lf",a);
scanf("%lf",b);
c=a+b;
printf("first number:%.2lf",a);
printf("\nsecond number%.2lf",b);
printf("\n\t%.2lf",a);
printf("\n+\t%.2lf",b);
printf("\n-------------\n");
printf(" %.2lf\n",c);
return 0;
}
c语言初学:求简单代码:
#include "stdio.h"
void main() {
int a[10] = {1,2,3,4,5,6,7,8,9,10};
int temp,i,j;
for(i = 0,j=9; i5; i++, j--) {
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
for(int k = 0; k10; k++)
printf("%d", a[k]);
}
求写一个简单的c语言代码,要最简单的那种。谢谢
我帮你写个简单点的吧,你这个是5位还好,要是位数更多呢,呵呵,
#include
void
main()
{
int
x,n=0;
printf("input
x:");
scanf("%d",x);
if(x=0)
printf("error!");
else
while(x)
{x/=10;
n++;}
printf("这是一个%d位数。\n",n);
}
求简单C语言程序代码!
小游戏2048源码:
#includestdio.h
#includestdlib.h
#includeconio.h
#includetime.h
#includewindows.h
int jsk( ); //计算空格数
void rsgm( ); //重置游戏
void inkey( ); //按键输入
void left( ); //向左移动
void right( ); //向右移动
void up( ); //向上移动
void down( ); //向下移动
void show( ); //输出界面
void adnum( ); //添加随机数
void yes( ); //游戏是否结束(1是0否)
void gtxy(int x, int y); //控制光标位置的函数
int a[4][4]; //存储16个格子中的数字
int score = 0; //每局得分
int best = 0; //最高得分
int ifnum; //是否需要添加数字(1是0否)
int over; //游戏结束标志(1是0否)
int i,j,k;
int main( )
{ rsgm( ); //重置游戏
inkey( ); //按键输入
return 0;
}
void setColor(unsigned short ForeColor = 7, unsigned short BackGroundColor = 0)
{ HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(handle, ForeColor + BackGroundColor * 0x10);
} //用于控制字符颜色的函数
void rsgm( ) //重置游戏
{ score = 0; ifnum = 1; over = 0; srand((unsigned)time(0)); //启动随机数发生器
int n = rand( ) % 16; //随机函数产生0-15的数字
for (i = 0; i 4; i++)
{for (j = 0; j 4; j++)
{ if (n == 0) { int k = rand( ) % 3; if (k == 0 || k == 1) { a[i][j] = 2; }
else { a[i][j] = 4; } n--; }
else { a[i][j] = 0; n--; }
}
}
adnum( );
system("cls");
CONSOLE_CURSOR_INFO cursor_info={1,0}; //以下两行是隐藏光标的设置
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),cursor_info);
setColor(14, 0); //设置字体淡红色,背景为黑色
printf("\n\n\t\t 2048小游戏"); setColor(7, 0); //恢复白字黑底
printf("\n\t┌──────┬──────┬──────┬──────┐");
printf("\n\t│ │ │ │ │");
printf("\n\t├──────┼──────┼──────┼──────┤");
printf("\n\t│ │ │ │ │");
printf("\n\t├──────┼──────┼──────┼──────┤");
printf("\n\t│ │ │ │ │");
printf("\n\t├──────┼──────┼──────┼──────┤");
printf("\n\t│ │ │ │ │");
printf("\n\t└──────┴──────┴──────┴──────┘");
show( );
}
void show( ) //输出界面
{ for(i=0;i4;i++)
for(j=0;j4;j++)
{ gtxy(7*j+9,2*i+4); //gtxy(7*j+9, 2*i+4)是光标到指定位置输出数字
if(a[i][j]==0){printf(" "); setColor(7, 0); printf("│");}
else if(a[i][j]10){ if (a[i][j] == 2) {setColor(14, 0); }
else if (a[i][j] == 4) {setColor(13, 0); }
else if (a[i][j] == 8) {setColor(12, 0); }
printf(" %d ", a[i][j]); setColor(7, 0); printf("│");
}
else if (a[i][j] 100){if (a[i][j] == 16) {setColor(12, 0); }
else if (a[i][j] == 32) {setColor(10, 0); }
else if (a[i][j] == 64) {setColor(2, 0); }
printf(" %d ", a[i][j]); setColor(7, 0); printf("│");
}
else if (a[i][j] 1000) {if (a[i][j] == 128) {setColor(9, 0); }
else if (a[i][j] == 256) {setColor(1, 0); }
else if (a[i][j] == 512) {setColor(13, 0); }
printf(" %d ", a[i][j]); setColor(7, 0); printf("│");
}
else if (a[i][j] 10000) {if (a[i][j] == 1024) {setColor(5, 0); }
else {setColor(15, 0); }
printf(" %d ", a[i][j]); setColor(7, 0); printf("│");
}
}
if (jsk( ) == 0)
{ yes( ); if (over) { gtxy(9,12); setColor(10, 0);
printf("\n\n 游戏结束!是否继续? [ Y/N ]:"); }
}
}
void inkey( ) //按键输入
{ int key;
while (1)
{ key = getch( );
if (over) { if (key == 89|| key == 121) {rsgm( ); continue; }
else if (key == 78|| key == 110) { return; }
else continue; }
ifnum = 0;
if(key==224)key=getch( );
switch (key)
{ case 75: left( ); break;
case 77: right( ); break;
case 72: up( ); break;
case 80: down( );break;
}
if (score best) { best = score; }
if (ifnum) { adnum( ); show( ); }
}
}
int jsk( ) //计算空格数
{ int n = 0;
for (i = 0; i 4; i++)
{ for (j = 0; j 4; j++) { if ( a[i][j] == 0) {n++;} } }
return n;
}
void left( ) //向左移动
{ for (i = 0; i 4; i++)
{for (j = 1, k = 0; j 4; j++)
{ if (a[i][j] 0)
{ if ( a[i][k] == a[i][j])
{ a[i][k] *= 2; k++;
score = score + 2 * a[i][j];
a[i][j] = 0; ifnum = 1; }
else if ( a[i][k] == 0) { a[i][k] = a[i][j]; a[i][j] = 0; ifnum = 1; }
else { a[i][k + 1] = a[i][j]; if ((k + 1) != j) { a[i][j] = 0; ifnum = 1; }
k++; }
}
}
}
}
void right( ) //向右移动
{for (i = 0; i 4; i++)
{for (j = 2, k = 3; j = 0; j--)
{if (a[i][j] 0)
{ if (a[i][k] == a[i][j])
{a[i][k] *= 2; k--; score = score + 2 * a[i][j]; a[i][j] = 0; ifnum = 1; }
else if ( a[i][k] == 0) {a[i][k] = a[i][j]; a[i][j] = 0; ifnum = 1; }
else { a[i][k - 1] = a[i][j]; if ((k - 1) != j) { a[i][j] = 0; ifnum = 1; } k--; }
}
}
}
}
void up( ) //向上移动
{for (i = 0; i 4; i++)
{for (j = 1, k = 0; j 4; j++)
{if (a[j][i] 0)
{if ( a[k][i] == a[j][i]) { a[k][i] *= 2; k++;score = score + 2 * a[j][i];
a[j][i] = 0; ifnum = 1; }
else if ( a[k][i] == 0) { a[k][i] = a[j][i]; a[j][i] = 0; ifnum = 1; }
else { a[k + 1][i] = a[j][i]; if ((k + 1) != j) { a[j][i] = 0; ifnum = 1; }
k++; }
}
}
}
}
void down( ) //向下移动
{ for (i = 0; i 4; i++)
{for (j = 2, k = 3; j = 0; j--)
{if (a[j][i] 0)
{if (a[k][i] == a[j][i])
{a[k][i] *= 2; k--;score = score + 2 * a[j][i]; a[j][i] = 0; ifnum = 1; }
else if (a[k][i] == 0) {a[k][i] = a[j][i]; a[j][i] = 0; ifnum = 1; }
else {a[k - 1][i] = a[j][i];
if ((k - 1) != j) {a[j][i] = 0; ifnum = 1; } k--; }
}
}
}
}
void adnum( ) //添加随机数
{ srand(time(0)); //启动随机数发生器
int n = rand( ) % jsk( );
for (int i = 0; i 4; i++)
{for (int j = 0; j 4; j++)
{ if (a[i][j] == 0) { if (n != 0) { n--; }
else {int k = rand() % 3;
if (k == 0 || k == 1) {a[i][j] = 2; return; }
else {a[i][j] = 4; return; } }
}
}
}
}
void yes( ) //游戏是否结束
{ for (int i = 0; i 4; i++)
{for (int j = 0; j 3; j++)
{if (a[i][j] == a[i][j + 1] || a[j][i] == a[j + 1][i]) {over = 0; return; }}
}
over = 1;
}
void gtxy(int x, int y) //控制光标位置的函数
{ COORD coord;
coord.X = x;
coord.Y = y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
}