学习日报

本文介绍了作者在C语言学习过程中的任务完成情况,包括数组、函数等基本概念的认识,冒泡排序程序的编写,以及static、extern等关键字的理解。同时分享了字符数组插入字符和洗牌发牌程序的设计思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今日学习任务
数组与函数
今日任务完成情况
认识了数组、函数的基本概念;编写了冒泡排序程序(直接实现和函数实现);了解了数组与指针之间的关系(加以程序编写加深印象);掌握了static、extern、register的意义以及作用并编写了相关的运用程序;认识了预处理的相关概念;学习了宏和宏函数的概念和用法
今日开发中出现的问题汇总
冒泡排序给计数变量幅值错误,导致排序不完全;部分语法错误导致程序无法正常编译
今日未解决问题
今日开发收获
积累了一些经典程序,学习了一些规范编程的习惯;找回了一些当初学习C语言的一些感觉,并纠正了以往一些程序编写的错误行为
自我评价
学习效率有所提高,学习状态有所提升
其他
作业:

4.字符数组中在指定位置插入字符:

#include<stdio.h>
#include<string.h>
int Insert(char a[],char num,int a_i);
int main()
{
int a_i;
char a[50],num;
printf("请输入一个字符串:");
gets(a);
printf("请输入想插入的一个字符:");
num=getchar();
getchar();
printf("请输入想插入的位置:");
fflush(stdin);
scanf("%d",&a_i);
if (Insert(a,num,a_i))
printf("没有插入!\n");
else
printf("插入后的字符串为:%s\n",a);
while(1);
return 0;
}
int Insert(char a[],char num,int a_i)
{
int i;
if(a_i >= strlen(a))
{
printf("输入的位置超出字符串长度了!");
return -1;
}
else
{
for(i=strlen(a);i >= a_i;i--)
{
a[i+1]=a[i];
}
a[i]=num;
return 0;
}
}


8.设计一个洗牌发牌的程序:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
 srand(time(NULL));
    int RandomNum, a[52] = {0};
    int i, j, flag = 0, tmp=0;
    while(1)
    {
     flag = 0;
     if(tmp == 53)
      break; 
  RandomNum = (rand()%52) + 1;
  for(i = 0; i < tmp; i++)
  {
   if(a[i] == RandomNum)
    flag = 1;
  }
  if(flag != 1)
  {
   a[tmp] = RandomNum;
   printf("第%2d个是: %d\n",tmp+1,a[tmp]);
   tmp++;
  } 
 } 
 while(1);
    return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值