C语言,求过程。
9.以下程序运行后的输出结果是。#include<string.h>main(){charch[]="abc",x[3][4];inti;for(i=0;i<3;i++)...
9.以下程序运行后的输出结果是 。
#include <string.h>
main()
{ char ch[]="abc",x[3][4]; int i;
for(i=0;i<3;i++) strcpy(x[i],ch);
for(i=0;i<3;i++) printf("%s",&x[i][i]);
printf("\n");} 展开
#include <string.h>
main()
{ char ch[]="abc",x[3][4]; int i;
for(i=0;i<3;i++) strcpy(x[i],ch);
for(i=0;i<3;i++) printf("%s",&x[i][i]);
printf("\n");} 展开
2个回答
展开全部
#include <string.h>
int main()
{
char ch[]="abc",x[3][4];
int i;
for(i=0; i<3; i++)
strcpy(x[i], ch);
// i = 0, x[0] 是一个字符串,向其拷贝abc,于是x[0]为abc
// i = 1, x[1] 是一个字符串,向其拷贝abc,于是x[1]为abc
// i = 2, x[2] 是一个字符串,向其拷贝abc,于是x[2]为abc
for(i=0; i<3; i++)
printf("%s",&x[i][i]);
// i = 0, x[0] 是一个内容为abc的字符串,x[0][0]是这个字符串第0个字符(a),&x[0][0]表示取x[0][0]的地址 ,指向a,所以输出就是abc
// i = 1, x[1] 是一个内容为abc的字符串,x[1][1]是这个字符串第1个字符(b),&x[1][1]表示取x[1][1]的地址 ,指向b,所以输出就是bc
// i = 2, x[2] 是一个内容为abc的字符串,x[2][2]是这个字符串第2个字符(c),&x[2][2]表示取x[2][2]的地址 ,指向c,所以输出就是c
//循环3次连起来最后输出的结果就是abcbcc
printf("\n");
}
int main()
{
char ch[]="abc",x[3][4];
int i;
for(i=0; i<3; i++)
strcpy(x[i], ch);
// i = 0, x[0] 是一个字符串,向其拷贝abc,于是x[0]为abc
// i = 1, x[1] 是一个字符串,向其拷贝abc,于是x[1]为abc
// i = 2, x[2] 是一个字符串,向其拷贝abc,于是x[2]为abc
for(i=0; i<3; i++)
printf("%s",&x[i][i]);
// i = 0, x[0] 是一个内容为abc的字符串,x[0][0]是这个字符串第0个字符(a),&x[0][0]表示取x[0][0]的地址 ,指向a,所以输出就是abc
// i = 1, x[1] 是一个内容为abc的字符串,x[1][1]是这个字符串第1个字符(b),&x[1][1]表示取x[1][1]的地址 ,指向b,所以输出就是bc
// i = 2, x[2] 是一个内容为abc的字符串,x[2][2]是这个字符串第2个字符(c),&x[2][2]表示取x[2][2]的地址 ,指向c,所以输出就是c
//循环3次连起来最后输出的结果就是abcbcc
printf("\n");
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询