课后总结

20200529第十次课

//数组

#include<stdio.h>

void test()

{

int a[4][3]={{1},{4,5},{5,6,7}};//int a[行][列]

int c[4][3]={1,2,3,4,5,6,7,8,9,0};

int i,j;

for(i=0;i<4;i++)

{

for(j=0;j<3;j++)

{

printf("%d",a[i][j]);

}

}

}

int main()

{

test();

}

//字符数组

//char a[4];

#include<stdio.h>

void test()

{

//这三种都可以

char a[10]={'a','b','z','f','\0'};  //'\0'为结束符,遇到'\0'后面就不读了

char b[10]={"dsfsd\0"};

char c[10]="saffnl";       

//字符串以/0作为结束标志 //8个字符的字符串会有9个字符,最后一个为0

int i;

for(i=0;i<10;i++)

{

printf("%c",a[i]);

printf("%s",a);    //字符串输出用%s //直接打数组名字,不用写运算符

}

int main()

{

test();

}

//字符串的拼接

#include<stdio.h>

#include<string.h>

void test()

{

char c1[20]="1234";

char c2[8]="adfsd";

strcat(c1,c2);      //字符串的拼接

printf("%s",c1);

}

int main()

{

test();

}

//比较时的大小判断

#include<stdio.h>

#include<string.h>

void test()

{

char c1[20]="1234";

char c2[8]="asdfg";

char c3[8]="sssdr";

strcmp(c2,c3);       

printf("%d",strcmp(c2,c3));//c2-c3 => c2<c3 结果为-1

///只有三种可能  1  , -1  , 0

}

int main()

{

test();

}

// 字符串的覆盖

#include<stdio.h>

#include<string.h>

void test()

{

char c1[20]="1234";

char c2[8]="asdfg";

char c3[8]="sssdr";

strcpy(c1,c3);

printf("%s",c1);

strcpy(c2,c1); //c2=c1 //把c1的值赋到c2

strcpy(c1,c3); //c1=c3

strcpy(c2,c2); //c3=c2

printf("%d",strlen("dd\0ddddd"));//从某个值开始扫描一直到\0

}

int main()

{

test();

}


作业:

1、//给出一组值,在第3个位置插入35。注意:预留空间、数组不要越界

#include<stdio.h>

void test()

{

int data[5] = {2,3,6,21};

int i;

for(i=3;i>=2;i--)

{

data[i+1] = data[i];

}

data[2] = 35;

for(i=0;i<5;i++)

{

printf(" %d ",data[i]);

}

}

int main()

{

test();

2、//给出一组值,查找是否存在35这一数据,如果存在,有几个;如果不存在计0

#include<stdio.h>

void test()

{

int data[5] = {1,35,2,-35,69};

int i;

int num=0;

for(i=0;i<5;i++)

{

if(data[i] == 35)

{

num++;

}

}

if(num!=0)

{

printf("有%d个35\n",num);

}

else

{

printf("记为0 ");

}

}

int main()

{

test();

3、//求出每一行的最大值

#include<stdio.h>

void test()

{

printf("求出每一行的最大值:\n");

int data[2][3]={{26,5,8},{65,2}};

int b[2];

int i,j;//i为行,j为列

for(i=0;i<2;i++)//行

{

b[i]=data[i][0];//设这一行最大值为0

for(j=0;j<3;j++)

{

if(data[i][j]>b[i])//如果第i行第j列的值比max大

{

b[i]=data[i][j]; //就重新给它赋值

}

}

}

for(i=0;i<2;i++)

{

for(j=0;j<3;j++)

{

printf("%d\n",data[i][j]);//将数组每一行每一列的数输出

}

printf("max=%d\n",b[i]); //将这一行最大的输出

}

}

int main()

{

test();

}

4、//求出每一列的最大值

#include<stdio.h>

void test()

{

printf("求出每一列的最大值:\n");

int data[4][5] = {{4,3,45},{64,8,5,2,66},{2,5},{45,65,3}};

int b[5];

int i,j;

for(j=0;j<5;j++)//行

{

b[j]=data[0][j];

for(i=0;i<4;i++)//列

{

if(data[i][j]>b[j])

{

b[j]=data[i][j];

}

}

}

for(j=0;j<5;j++)

{

for(i=0;i<4;i++)

{

printf("%d\n",data[i][j]);//将数组每一行每一列的数输出

}

printf("max=%d\n",b[j]); //将这一行最大的输出

}

}

int main()

{

test();

}

5、//输出的最大值位置及最大值

#include<stdio.h>

void test()

{

int data[2][3] = {{2,54,65},{1,99,25}};

int i,j,max;

int hang=0,lie=0;

max=data[0][0];

for(i=0;i<2;i++)

{

for(j=0;j<3;j++)

{

if(data[i][j]>max)

{

max=data[i][j];

hang=i;

lie=j;

}

}

}

printf("max=%d,hang=%d,lie=%d",max,hang,lie);

printf("\n");                  //    位置有问题

}

int main()

{

test();

}

6、//给出一组值,删除第3个位置元素

#include<stdio.h>

void test()

{

int data[5] = {2,5,6,152,33};

int i;

for(i=3;i<5;i++)

{

data[i-1] = data[i];

}

for(i=0;i<5;i++)

{

printf(" %d ",data[i]);

}

}

int main()

{

test();

}

7、//给出一组值,查找是否存在35这一数据(无重复数据)

#include<stdio.h>

void test()

{

int data[10]={2,3,4,5,6,1,9,8,7,35};

int i;

for(i=0;i<10;i++)

{

if(data[i] = 35)

{

printf("数列中有35这个数\n");

break;

}

else

{

printf("数列中没有35这个数\n");

break;

}

}

}

int main()

{

test();

}

8、//一个数列,前3个数是0,0,1,以后每个数都是其前面3个数的和,打印出此数列前n个数。

#include<stdio.h>

void test()

{

int a,b,c,sum,i;

int n;

a=0;

b=0;                //设第一、二、三的数

c=1;

printf("输入想打印出的前多少个数:\n");

scanf("%d",&n);

printf("%d\n",a);

printf("%d\n",b);

printf("%d\n",c);

for(i=1;i<n;i++)

{

sum=a+b+c;

printf("%d\n",sum);

a=b;

b=c;

c=sum;

}

while(1);

}

int main()

{

test();

}

9、//找出最大值输出

#include<stdio.h>

void test()

{

int data[2][3] = {{2,64,29},{2,85}};

int max;

int i,j;

max = data[0][0];

for(i=0;i<2;i++)

{

for(j=0;j<3;j++)

{

if(data[i][j]>max)

{

max=data[i][j];

}

}

}

printf("max=%d\n",max);

printf("\n");

}

int main()

{

test();

10、//杨辉三角形(FAKE)

#include <stdio.h>

#define N 14

void test()

{

    int i, j, k, n=0, a[N][N];  /*定义二维数组a[14][14]*/

    while(n<=0||n>=13){  /*控制打印的行数不要太大,过大会造成显示不规范*/

        printf("请输入要打印的行数:");

        scanf("%d",&n);

    }

    printf("%d行杨辉三角如下:\n",n);

    for(i=1;i<=n;i++)

        a[i][1] = a[i][i] = 1;  /*两边的数令它为1,因为现在循环从1开始,就认为a[i][1]为第一个数*/

    for(i=3;i<=n;i++)

        for(j=2;j<=i-1;j++)

            a[i][j]=a[i-1][j-1]+a[i-1][j];  /*除两边的数外都等于上两顶数之和*/

    for(i=1;i<=n;i++){

        for(k=1;k<=n-i;k++)

            printf("  ");  /*这一行主要是在输出数之前打上空格占位,让输出的数更美观*/

        for(j=1;j<=i;j++)  /*j<=i的原因是不输出其它的数,只输出我们想要的数*/

            printf("%6d",a[i][j]);


        printf("\n");  /*当一行输出完以后换行继续下一行的输出*/

    }

    printf("\n");

}

int main()

{

test();

}

11、//查找序列中是否存在数据n

#include<stdio.h>

void test()

{

int data[2][3] = {{2,5,8},{89,15}};

int i,j;

int n;

printf("输入一个数:\n");

scanf("%d",&n);

for(i=0;i<2;i++)

{

for(j=0;j<3;j++)

{

if(data[i][j] = n)

{

printf("该序列中存在数据%d\n",n);break;

}

else

{

printf("该序列中不存在数据%d\n",n);break;

}

}

}

}

int main()

{

test();

}

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,084评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,623评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,450评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,322评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,370评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,274评论 1 300
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,126评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,980评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,414评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,599评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,773评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,470评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,080评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,713评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,852评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,865评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,689评论 2 354