当前位置:首页 » 编程语言 » c语言edcbabcde
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言edcbabcde

发布时间: 2022-09-09 07:24:33

‘壹’ c语言基础知识

char a[20],b[20],c[20];
上面的a,b,c都是数组变量,在定义时已经为其分配栈内存,而
char (*str1)[20],(*str2)[20],(*str3)[20];
只是分配了4个字节的内存来保存指针变量(即变量本身),而指针的值(即指向)还没有,所以这些指针还不能保存数据!

--------------
char (*str1)[20],(*str2)[20],(*str3)[20];
str1 str2 str3均为指针,都指向长度为20的char数组.

你只定义了指针,但是没有对其进行有效的初始化,没有内存来保存数数据.

可以将这一行修改:
char (*str1)[20],(*str2)[20],(*str3)[20];
==>>
char arr[3][20];
str1 = arr[0];
str2 = arr[1];
str3 = arr[3];

其余照旧就行了.

‘贰’ c语言设计 帮忙~~


stract函数
#define NUM 5
#include<stdio.h>

lj(char b[10],char c[NUM])
{
int i;
for(i=5;i<10;i++)
{
b[i]=c[i-5];
if(b[i]=='\0')
{
break;
}
}
}
main()
{
char s[10]="abcde";
char a[NUM];
gets(a);
puts(a);
lj(s,a);
printf("zifuchuan lianjie hou is ");
puts(s);
}
strcmp 函数
#include<stdio.h>
main()
{
char a[5],b[5],i;
int numa,numb,cha;
gets(a);
gets(b);
numa=numb=0;
for(i=0;i<5;i++)
{
cha=a[i]-b[i];
if(cha!=0)
{
printf("cha shi %d!",cha);
break;
}
}
}
strcpy函数
#include<stdio.h>
main()
{
char s1[10],s2[10],i,j;
gets(s1);
gets(s2);
j=0;
while(s2[j]!='\0')
{
j++;
}
for(i=0;i<=j;i++)
{
s1[i]=s2[i];
}
puts(s1);
}

‘叁’ C语言如何输出ABCDCBA循环二维图形矩阵

代码:

#include <stdio.h>

int main()

{

char *s="ABCDCBABCDCBA";

int i;

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

printf("%.*s ",7,s+i);

return 0;

}

运行截图:

‘肆’ c语言字符串排序

#include&lt;stdio.h&gt;

#include&lt;string.h&gt;

#define SIZE 91

#define LIM 31

#define HALT""

void stsrt(char*strings[],int num);

int main(void)

{

char input[LIM][SIZE];

char*ptstr[LIM];

int ct=0;

int k=0;

printf("input up to%d lines,and I will sort them. ",LIM);

printf("To stop,press the enter key at a line's start. ");

while(ct&lt;LIM&&gets_s(input[ct],100)!=NULL&&input[ct][0]!='')

{

ptstr[ct]=input[ct];

ct++;

}

stsrt(ptstr,ct);

puts(" here's the sorted list: ");

for(k=0;k&lt;ct;k++)

{

puts(ptstr[k]);

}

puts(" here's the list: ");

for(k=0;k&lt;ct;k++)

{

puts(input[k]);

}

return 0;

}

void stsrt(char*strings[],int num)

{

char*temp;

int top,seek;

for(top=0;top&lt;num-1;top++)

{

for(seek=top+1;seek&lt;num;seek++)

{

if(strcmp(strings[top],strings[seek])&gt;0)

{

temp=strings[top];

strings[top]=strings[seek];

strings[seek]=temp;

}

}

}

(4)c语言edcbabcde扩展阅读:

printf函数使用注意事项

1、域宽

%d:按整型数据的实际长度输出。

如果想输出指定宽度可以指定域宽,%md--&gt;m域宽,打印出来以后,在控制台上,显示m位;

如果我们要打印的数的位数如果超过我们设定m则原样输出;

如果我们要打印的数的位数如果小于我们设定的位数,则补空白,具体如下:

如果m为正数,则左对齐(左侧补空白);

如果m为负数,则右对齐(右侧补空白)。

2、转义字符

如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示。

如:printf("%f%%",1.0/3);输出结果:0.333333%。

‘伍’ 如何用递归函数在你输入一个字母(不论大小写)时将26个字母排成"....EdCbAbCdE....."的该字母之间的

#include<stdio.h>
char s[105];
char c,t;
void op(int m,int n)
{

if(m<0) s[2*t] = '\0';
else {
if(n%2)
s[m] = n+'a',s[2*t-m-2] = n+'a';
else
s[m] = n+'A',s[2*t-m-2] = n+'A';
op(m-1,n+1);
}
}
int main()
{
char d;
while(scanf("%c",&c) == 1) {
if(c>='a' && c<='z') t = c-'a'+1;
else t = c-'A'+1;
op(t-1,0);
printf("%s\n",s);
scanf("%c",&d);
}
return 0;

}

‘陆’ void f(char c) { cout<<c; if(c=='a') return; f(c-1); cout<<c; } void main() { f('e'); }结果是什么

结果是:edcbabcde
原理很简单,这是一个递归函数,f(c) 里面调用 f(c - 1)
因此在 f(c - 1) 前打印的先打印,是edcba 这样打印的
然后if(c == 'a') return; 当c == 'a' 时就不再递归了,直接返回
而在f(c - 1) 后面的打印,则是 bcde 这样打印,因为是要先调用了 f(c - 1) 里面的所有打印,才调用外面的打印,因此是跟前面打印的顺序是倒过来的

‘柒’ A BAB CBABC DCBABCD EDCBABCDE 请问大神如何用C 语言完成

#include<stdio.h>
main()
{
int i,j,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=n;j>=i;j--)
printf(" ");
for(j=i;j>0;j--)
putchar('A'+j-1);
for(j=1;j<i;j++)
putchar('A'+j);
printf("\n");
}
}

‘捌’ c语言输出…EdCbAbCdE…相邻大小写分开,对称

# include<stdio.h>
void main()
{
char s1[ ]={"edcba"},s2[80];
int i=0,j=0;
//将s1字符串的内容复制到s2字符串中
while(s1[i]!='\0')
{
s2[j]=s1[i];
i++;
j++;
}
i--; //不包括结束标志
//实现对称
while(i-->0)
s2[j++]=s1[i];
s2[j]='\0';
//相邻大小写
for(i=0;s2[i]!='\0';i++)
if(i%2==0)
s2[i]-=32;
puts(s2);
}

‘玖’ 用递归调用写一个C程序

求人帮忙一点分都不给,没诚意,再说问题也不复杂,看看书就会了

‘拾’ 求助,,用Csharp(C#)写出该程序。。之前的那个形式写错了。。

string str = ""; char[] car=new char[]{'A','B','C','D','E'};
for (int i = 9; i >= 1; i = i - 2)
{
switch (i / 2)
{
case (4):
str += " " + car[0].ToString() + " " + "\r\n";
break;
case (3):
str += " " + car[1].ToString() + car[0].ToString() + car[1].ToString() + " " + "\r\n";
break;
case (2):
str += " " + car[2].ToString() + car[1].ToString() + car[0].ToString() + car[1].ToString() + car[2].ToString() + " " + "\r\n";
break;
case (1):
str += " " + car[3].ToString() + car[2].ToString() + car[1].ToString() + car[0].ToString() + car[1].ToString() + car[2].ToString() + car[3].ToString() + " " + "\r\n";
break;
case(0):
str += car[4].ToString() + car[3].ToString() + car[2].ToString() + car[1].ToString() + car[0].ToString() + car[1].ToString() + car[2].ToString() + car[3].ToString() + car[4].ToString();
break;
default:
break;

} }