今日学习任务 | 学习掌握数组和函数的定义、声明与使用 |
今日任务完成 情况(详细说 明今日任务 是否按计划完成, 开发的代码量) | 今日计划以完成。上午学习了怎样初始化一维和二维数组,以及怎样使用, 以及字符数组,下午学习了函数的定义声明与使用,还有各中变 量的使用,主要是static的使用。都学习了经典的程序。 |
今日开发遇到的 问题汇总 | 循环时,括号的后面不可以加分号; 值传递和地址传递一定要搞明白; static的用途一定要记住; |
今日未解决的问题 | 函数的调用仍然有些问题 |
今日开发收获 | 全局变量和局部变量的区别; 外部变量的使用; static的用法 |
自我评价 | 能够主动学习,认真听老师的讲解 ,不懂的能用于提问 |
其他 | 无 |
1、字符数组中在指定位置插入字符。
#include <stdio.h>
void INSSERT (char a[],int n,char c)
{
int i;
for(i=strlen(a)+1;i<n;i--)
{
a[i]=a[i-1];
}
a[n]=c
}
void print(char a[])
{
int i;
for(i=0;i<strlen(a);i++)
{
printf("%c",a[i]);
}
}
int main (char argc,const char *argv[])
{
char a[20];
char c;
int n;
printf("请输入一个字符:\n");
get(a);
printf("请输入你要插入的位置,要插入的字符:\n");
scanf("%d%c",&n,&c);
print(a);
return 0;
}
2、设计一个洗牌,发牌的程序。
#include <stdio.h>
int main()
{
int n,i;
int flag[52]={0};
srand((unsigned int)time(NULL));
for(i=0;i<52;i++)
{
n=rand()%52;
while(flag[n]==1)
{
n=rand()%52;
}
flag[n]=1;
if(n>=0&&n<13)
{
printf("红心%d",n+1);
}
else if(n>=13&&n<26)
{
printf("黑桃%d",n-12);
}
else if("n>=26&&n<39")
{
printf("梅花%d",n-25)
}
else
{
printf("方片%d",n-38);
}
if((i+1)%13==0)
printf("\n");
}
return 0;
}