⑴ c语言指针编程题
#include<stdio.h>
#include<string.h>
#define MAX 20
#define NUM 3
void sort(char *str[],int n)
{
char *temp;
int i,j,k;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(strcmp(str[k],str[j])>游誉0)k=j;
if(k!=i)
{
temp=str[i];
str[i]=str[k];
str[k]=temp;
}
}
}
void print(char *str[],int n)
{
int i;
for(i=0;i<绝茄n;i++)
printf("str[%d]%s\n",i,str[i]);
}
int main()
{
char str[NUM][MAX],*p[NUM];
int i;
for(i=0;i<3;i++)
{
printf("并磨察str[%d]:",i);
scanf("%s",&str[i]);
p[i]=str[i];
}
sort(p,3);
print(p,3);
}
根据你的改了 不知道能不能出来 自己试下
⑵ C语言指针编程题,求助大神解答
#include<stdio.h>
int a[200];
void rotateArray(int *a,int n,int m){
m%=n; //这句是防止m大于n 结果会不正确的情况
for(int i=m;i<n;++i)scanf("%d",&a[i]);
for(int i=0;i<m;++i)scanf("%d",&a[i]);
}
int main(){
int n,m;
scanf("%d%d",&n,&m);
rotateArray(a,n,m);
printf("%d",a[0]);
for(int i=1;i<n;++i)printf(",%d",a[i]);
return 0;
}
⑶ 【高分悬赏】C语言编程题 指针
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_N 20
#define MAX_DST 200
char *sub_str_cp(char *src, char *dst, int m)
{
char *dst_o = dst;
if (NULL==src || NULL==dst ||
strlen(src)>MAX_N || m<1 || m>MAX_N)
return NULL;
src += m-1;
while (*(dst++) = *(src++));
return dst_o;
}
char *str_join(char *src1,char *src2,char *dst)
{
char *dst_o = dst;
if (NULL==src1 || NULL==src2 || NULL==dst)
return NULL;
while (*(dst++) = *(src1++));
dst -= 1;
while (*(dst++) = *(src2++));
return dst_o;
}
int ins_sort(int iArr[],int num,int new_one)
{
if (NULL == iArr || num+1 >= MAX_DST)
return 0;
int *p = iArr + num - 1;
while (p >= iArr && new_one < *p)
{
*(p+1) = *(p);
p--;
}
*(p+1) = new_one;
return num+1;
}
// 删除从字符数组dst中首次拍友渣出现的字符del_c
char *del_char(char *dst,char del_c)
{
int idx = 0;
char *dst_o = dst;
if (NULL == dst) return NULL;
while ('\0' != *dst)
{
if (*(dst++) != del_c)
*(dst_o + idx++) = *(dst-1);
}
return dst_o;
}
int main()
{
char src[MAX_N+1],src1[MAX_N+1],src2[MAX_N+1];
char dst[MAX_DST+1];
char cA;
int ins_new,num_of_iArr,iA;
int iSort[MAX_DST] = {12,23,32,55,100,101,205,309};
// sub str cp
int m;
printf("subject 1. strcpy\n");
printf("input string(length <= %d):",MAX_N);
scanf("%s",src);
printf(" string from position(1=<m<=%d):",MAX_N);
scanf("%d",&m);
printf("string have been copied:%s\n",sub_str_cp(src,dst,m));
// str join
printf("\nsubject 2. strcat\n");
printf("input string1(length <= %d):",MAX_N);
scanf("%s",src1);
printf("input string2(length <= %d):",MAX_N);
scanf("%s",src2);
printf("string after joining:%s\n",str_join(src1,src2,dst));
// array sort
printf("\nsubject 3. sorting\n");
num_of_iArr = 8;
printf("oringinal array:\n");
for (iA=0; iA<袭悄num_of_iArr; iA++)
printf("%d\t",iSort[iA]);
printf("\ninsert an integer:");
scanf("告散%d",&ins_new);
num_of_iArr = ins_sort(iSort,num_of_iArr,ins_new);
printf("array after sorting:\n");
for (iA=0; iA<num_of_iArr; iA++)
printf("%d\t",iSort[iA]);
printf("\n");
// del elem of array
getchar();
printf("\nsubject 4. del\n");
printf("string:%s\n",dst);
printf("del ? character from above string:");
scanf("%c",&cA);
printf("string after deleting %c:%s\n",cA,del_char(dst,cA));
return 0;
}
⑷ C语言编程题目 指针
C程序如下:
#include
"stdio.h"
#include<string>
#include<iostream>
using
namespace
std;
main()
{
string
Cons="12345678";
string
input;
const
char
*B=Cons.data();
const
char
*A;
cin>>input;
A=input.data();
int
lengthA=input.length();
int
lengthB=Cons.length();
for(int
i=0;i<lengthB;i++)
{
if(B[i]>A[i])
{
printf("输入碰哗的数小于原数");break;}
if(B[i]<A[i])
{
printf("输入的数大于原数");break;}
}
if(lengthA>lengthB&&lengthB==i)
printf("输入的数大于原数");
if(lengthA==lengthB&&lengthB==i)
printf("输入的数等于告吵察原数");
}
如果你说的是比较字符串大小就是这个程序了
进入后开始输入你要输入的字符串袜茄
⑸ C语言指针编程题,求大神解答
#include "stdio.h"
void fun(int a[][6],int n,int m,int *odd,int *even)
{int i,j;
*odd=*even=0;
for(i=0; i<n; i++)
for(j=0; j<m; j++)
a[i][j]%2?*odd+=a[i][j]:*even+=a[i][j];
}
int main()
{ int n,m,i,j,a[5][6],odd,even;
for(i=0; i<5; i++)
{ for(j=0; j<6; j++)
{ a[i][j]=i*6+j+1;
printf("%4d",a[i][j]);
}
printf(" ");
}
fun(a,5,6,&odd,&even);
printf("奇数之和=%d 偶数之和=%d ",odd,even);
return 0;
}
⑹ c语言 指针部分编程题
完整程序如下:
#include <stdlib.h>
main(){
int a,b,c;
int *p1,*p2,*p3;
printf("please input 3 int data\滑吵n");
scanf("%d %d %d",&a,&b,&c);
p1= &a;
if (b > *p1)p1= &b;
if (c > *p1)p1= &c;
p3= &a;
if (b< *p3) p3= &b;
if (c< *p3) p3= &c;
p2= &a;
if ( p2==p1 || p2==p3) p2= &b;
if ( p2==p3 || p2==p3) p2= &c;薯让蠢
printf("%d %d %d\数陪n",*p1,*p2,*p3);
return 0;
}
⑺ C语言指针一道简单的编程题
按照你的要求编写的C语言程序如下
include<stdio.h>
intmain()
{
inta,b;
int*p=&a;
a=30;
printf("a=%d ",*p);
p=&b;
scanf("%d",p);
a=*p+24;
printf("a=%d,b=%d",a,b);
return0;
}
运行结果
a=30
76
a=100,b=76
⑻ C语言指针编程题,求助大佬
#include <stdio.h>
#include <string.h>
#define MAXS 100
char *str_cat( char *s, char *t );
int main()
{
char *p;
char str1[MAXS+MAXS] = {'