1、改错:
(a)、void test1()
{
char string[10]; //string为关键字
char *str1 = "0123456789"; //尾部有‘\0’ 超出数组范围
strcpy(string, str1);
}
(b)、void test2()
{
char string[10], str1[10];
for (i=0; i<10; i++)
{
str1[i] = 'A';
}
strcpy(string, str1); //数组尾部没有‘\0’结束标准
}
(c)、void test3(char *str)
{
char string[10];
if (strlen(str1)<=10) //str1变量未定义
{
strcpy(string, str1);
}
}
/*2、找赛手:2个羽毛球队比赛,各出3人,每个人只比一次。甲队为A,B,C三人,乙队为X,Y,Z三人。有人打听比赛名单,A说他不和X比,C说不和X,Z比。编程找出三队赛手的名单.
*/
#include<stdio.h>
void main(void)
{
char i,j,k;
for(i='x'; i<='z'; i++)
{
for(j ='x'; j<='z'; j++)
{
if(i!=j)
{
k = 'x'+'y'+'z'- i - j;
if(i!='x' && k!='x' && k!='z')//这里根据题意排除掉不符合的名单
printf("a和%c\nb和%c\nc和%c\n",i, j, k);
}
}
}
}
}
/*3、用C语言实现字符串中子字符串的替换, 成功返回0,失败返回-1.例如:“ABCDEFG”这个字符串,把其中"BCD"替换成“9527”这个子串,结果变成:“A9527EFG”
函数原型:
int str_replace(char *str, char * replaced_str, char *new_str)
*/
(a)、void test1()
{
char string[10]; //string为关键字
char *str1 = "0123456789"; //尾部有‘\0’ 超出数组范围
strcpy(string, str1);
}
(b)、void test2()
{
char string[10], str1[10];
for (i=0; i<10; i++)
{
str1[i] = 'A';
}
strcpy(string, str1); //数组尾部没有‘\0’结束标准
}
(c)、void test3(char *str)
{
char string[10];
if (strlen(str1)<=10) //str1变量未定义
{
strcpy(string, str1);
}
}
/*2、找赛手:2个羽毛球队比赛,各出3人,每个人只比一次。甲队为A,B,C三人,乙队为X,Y,Z三人。有人打听比赛名单,A说他不和X比,C说不和X,Z比。编程找出三队赛手的名单.
*/
#include<stdio.h>
void main(void)
{
char i,j,k;
for(i='x'; i<='z'; i++)
{
for(j ='x'; j<='z'; j++)
{
if(i!=j)
{
k = 'x'+'y'+'z'- i - j;
if(i!='x' && k!='x' && k!='z')//这里根据题意排除掉不符合的名单
printf("a和%c\nb和%c\nc和%c\n",i, j, k);
}
}
}
}
}
/*3、用C语言实现字符串中子字符串的替换, 成功返回0,失败返回-1.例如:“ABCDEFG”这个字符串,把其中"BCD"替换成“9527”这个子串,结果变成:“A9527EFG”
函数原型:
int str_replace(char *str, char * replaced_str, char *new_str)
*/