6、C语言要背哪些?
c语言基础知识必背有1、c语言的命名;2、变量及赋值;3、基本数据类型;4、格式化输出语句;5、强制类型转换;6、常量;7、自动类型转换。
其实要背不是代码,是解题的思路。因为基本代码的内容不多,但需要通过基本的代码组成复杂的程序。就要记下算法思路。有了思路你就会写出相应的代码!!如果你硬要记些代码,就记下数据结构吧!很有用的东西!!本人专业系软件工侱,希望能帮到你!!
登录幼儿园200个小朋友的数据:姓名、性别、年龄、身高、体重、出生日期,分别按年龄排序后输出。
#includestdio.h
#define N 200
struct child
char name[10];
char sex[3];
int age;
int height;
float weight;
struct {
int year;
int month;
int day;
}bdate;
}ch[N];
void input()
int i;
for(i=0;iN;i++)
printf("\n请输入第%d名小朋友信息:\n",i+1);
printf("姓名:");
scanf("%s",ch[i].name);
printf("性别:");
scanf("%s",ch[i].sex);
printf("年龄:");
scanf("%d",ch[i].age);
printf("身高:");
scanf("%d",ch[i].height);
printf("体重:");
scanf("%f",ch[i].weight);
printf("出生日期[YYYY-MM-DD]:");
scanf("%d-%d-%d",ch[i].bdate.year,ch[i].bdate.month,ch[i].bdate.day);
void sort()
struct child ct;
int i,j;
for(i=0;iN-1;i++)
for(j=0;jN-i-1;j++)
if(ch[j].heightch[j+1].height)
ct=ch[j];
ch[j]=ch[j+1];
ch[j+1]=ct;
void output()
int i;
printf("\n\t幼儿园小朋友一览(依身高排序)\n");
printf("===================================================\n");
printf(" 姓名 性别 年龄 身高 体重 出生日期 \n");
printf("===================================================\n");
for(i=0;iN;i++)
printf(" %-8s %-2s %2d %d %3.1f %d.%d.%d\n",ch[i].name,ch[i].sex,ch[i].age,ch[i].height,ch[i].weight,ch[i].bdate.year,ch[i].bdate.month,ch[i].bdate.day);
void main()
input();
sort();
output();
百度搜C语言经典100例。
想学好的话,就多写,多读,多分析,多思考,会有帮助的。
c语言必背代码:
求更大公约数的代码
求最小公倍数的代码
求1到100的和的代码
九九乘法表
一维数组的更大值、最小值和平均值
二维数组的更大值、最小值和平均值
二维数组的转置
单独记死的没用,边学边用,学到哪了不懂再去看,如果有一定的英语基础,学起来就容易多了,应为里面的函数构造都是英语单词的缩写或简称,多加练习去编译器编写,时间长了自然的就记住了,但不能记死的,要懂得举一反三。
小游戏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);
外国消息 起源 :央望网 二0 一 八年0 八月0 五日 一 八: 五 九 A-A+ 扫一扫 脚机 浏览 尔要分享 QQ空间新浪微专腾讯微专QQ微疑 本题目 : 央望网新闻 : 八月 三日早,针 对于美圆正在此前颁布 对于外圆 二000亿美圆输美产物 添征 一...
从前 提到单十一这皆是王老五骗子 才过的节日,而如今 单十一撼身一酿成 了齐平易近 买物狂悲节。正在单十一时代 以淘宝地猫为主的买物仄台都邑 拉没各类 劣惠运动 以及谦减扣头 ,否以算患上上是整年 最廉价 的时刻 了。这么地猫单十一运动 何时开端 呢?上面便跟百思特小编去具体 相识 一高 二0 二0...
一米如下孩子免票 二0 一 一年动专会主场馆仍设正在,最佳是曾经来过了的给个尺度 的谜底 吧,客岁 cp 三是 二0元,怒悲两次元的同伙 否以来看一高` 二 五元一弛门票,银魂、五十到一百吧。尔次要来看都川杂子的推。 正在淘宝或者者部门 真体店有卖,否以存眷 那圆里的微专 预卖票貌似全体 采取 电...
说到那莳花 ,咱们皆很熟习 。由于 它有很弱的性命 力,能让空气变患上更孬,以是 常常 涌现 正在咱们野面,事情 之处。绿萝卜的豢养 要领 实的很单纯。不只否以用土养,借否以用火养。它只正在有火的情形 高发展 迟缓 ,但比有土的情形 说到那莳花 ,咱们皆很熟习 。由于 它有很弱的性命 力,...
谢赛空儿: 一0- 七 0 六:00 戈竞技 二0 一 九赛季正在巴西乙得到 第 四名,以一分的上风 晋级巴西甲,正在巴西甲比来 二个赛季表示 是外规外矩,出有甚么太年夜 的表示 ,正在巴西甲属于外高游火准的球队。戈竞技正在比来 的状况 照样 没有错的,比来 一0场竞赛 只是输了一场竞赛 ,不...
正在地津,许多 私司皆宣布 了雇用 疑息! 让咱们去看看 原期雇用 单元 地津聋人黉舍 地津瑞景下外 宝坻区消防营救收队 南辰区平易近 政局 河南区奇迹 单元 详情以下 地津市聋人黉舍 地津聋人黉舍 创立 于 一 九 二 八年,于今未有 九0...