东北林业大学oj1025 又是指针
Posted leader_win
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了东北林业大学oj1025 又是指针相关的知识,希望对你有一定的参考价值。
现在有的程序根本用不上指针 但由于学c 不得不用指针这个让我苦笑不得的东西
这道题 就是一个例子
本来 简简单单的字符串查找 变成指针 o my
GOD!!!
题就是下面的
description |
程序完成在一些已知字符串中查找含有“*”最多的字符串的功能。要求用返回指针值的函数完成:找到这个字符串,函数返回“*”最多的字符串的首地址,若所有字符串中均不含“*”,则返回NULL。并将找到的字符串输出。 要求:用返回指针值的函数完成查找,在main中将其输出。 |
input |
put : 输入数据有多组,每组包括两行,第一行1个整数n,表示n个各不相同的字符串(n<=100);第二行是n个长度不超过50的字符串,每个之间用空格分隔。 |
output |
将找到的字符串输出。每个一样输出。 |
sample_input |
4 abc*kie** *kdiei*kdi*ki** i*9k*kiei* iie 5 abc iie*ki* kie***** *kidi* 909* |
sample_output |
*kdiei*kdi*ki** kie***** |
看代码吧
#include <iostream>
#include <string.h>
using namespace std;
char *ac(char (*a)[55],int n)
int s[n];
memset(s,0,sizeof(s));//赋初始值
for(int i=0; i<n; i++)
for(int j=0; j<strlen(a[i]); j++)
if(a[i][j]=='*')s[i]++;
int sum,k;
sum=s[0];
for(int i=0; i<n; i++)
if(sum<=s[i])
sum=s[i];
k=i;
if(sum)
return *(a+k);//一定在这返回指针
return NULL;//不要忘了空指针哦
int main()
int n;
while(cin>>n)
char a[n][55];
for(int i=0; i<n; i++)
cin>>a[i];
cout<<ac(a,n)<<endl;//不解释了
return 0;
以上是关于东北林业大学oj1025 又是指针的主要内容,如果未能解决你的问题,请参考以下文章