求大佬帮忙!请编写一个excel自定义函数编写能将字符串中所有的大写字母变成小写,并编写主程序验证。

以下试题来自:
问答题下列给定程序中,函数fun()的作用是,将字符串tt中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入"Ab,cD",则输出"ab, cd"。
请改正函数fun()中的错误,使它能得出正确的结果。
注童:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include <stdio.h>
#include <string.h>
#include <conio.h>
char *fun (char tt[])
for(i=0; tt[i]; i++)
/**************found**************/
if((’A’ <=tt[i]||(tt[i]<=’z’ ))
tt[i]+=32;
return(tt);
char tt[81];
printf("\nPlease enter a string:");
printf("\nThe result string is:\n %s",
错误:if((’A’ <=tt[i]||(tt[i]<=’Z’))
正确:if((tt[i]>=’A’)&&(tt[i]<=’Z’))
为您推荐的考试题库
你可能感兴趣的试题
1.问答题 void fun(char *ss)
for(i=0;ss[i]!=’\0’;i++)
/*将ss所指字符串中所有下标为奇数位置的字母转...... 2.填空题 [1]n>1
热门相关试卷
最新相关试卷举例: ask not wh&&
#include &iostream&
#include &string&
#include &vector&
#include &algorithm&
//给定一个字符串,求出其最长的重复子串
string lsubstr_1(const string & str)
vector&string&
for (int i = 0; i & str.size(); i++)
vs.push_back(str.substr(i));
sort(vs.begin(), vs.end());
int max = 0;
int flag = 0;
for (int i = 0; i &( vs.size()-1); i++)
int j = 0;
while (vs[i][j] == vs[i + 1][j] && j&vs[i].size() && j&vs[i+1].size())
if (j&max)
return vs[flag].substr(0, max);
string lsubstr_2(const string & str)
for (int i = 0; i & str.size();i++)
for (int j = (str.size() - i); j &=1 ; j--)
string subs = str.substr(i, j);
int front = str.find(subs);
int back = str.rfind(subs);
if (front != back && subs.size() & maxstr.size())
string lsubstr_3(const string & str)
for (int i = 0; i & str.size(); i++)
for (int j = 0; j & j++)
while (str[m] == str[k] && i&str.size() && k&str.size())
temp = str.substr(j, k - j);
if (temp.size()&maxstr.size())
void main(void)
getline(cin, test);
cout && lsubstr_1(test) &&
cout && lsubstr_2(test) &&
cout && lsubstr_3(test) &&
string FindStr(const string &str)
string temp, MaxS
int MaxLen = 0;
for (int i = 0; i & str.length(); ++i)
for (int j = str.length() -i; j != 0; --j)
temp = str.substr(i, j);
int front = str.find(temp);
int behind = str.rfind(temp);
int templen = temp.length();
if (front != behind&&templen & MaxLen)
return MaxS
循环去掉前面i个字符。
剩下的用KMP求next数组算法。
数组中最大值就是最长重复。
这个复杂度怎么样?
求next 复杂度 n
import java.util.S
public class Main{
public static void maxStr(String string){
char[] str = string.toCharArray();
if(str==null)
int max = 0;
int frist = 0;
int count = 0;
//其中i表示每次循环设定的字符串比较间隔(1,2,3。。。)。j表示遍历字符串数组。
for(int i=1;i&str.i++)
for(int k=0,j=0;j&str.length-i;j++){
if(str[j]==str[i+j])
frist = j-k+1;
if(max&0){
System.out.println(max);
for(;count&count++){
System.out.print(str[frist+count]);
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
String str = scanner.nextLine();
maxStr(str);
传送门:《编程珠玑(第2版)》15.2章节“短语”。采用后缀数组。空间O(n^2),时间O(n*logn)
public class MaxReStr {
public String findStr(String s){
if(s==null){
//最长重复子串的长度
int max=0;
//最长重复子串的第一个字符在s中的下标
int first=0;
String res =
//i为每次循环设定的字符串比较间隔:1,2,...,s.length()-1
for(int i=1;i&s.length();i++){
for(int k=0,j=0;j&s.length()-i;j++){
if(s.charAt(j)==s.charAt(j+i))
if(k&max){
first=j-max+1;
if(max&0){
res = s.substring(first, first+max);
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = &eabcdabcf&;
System.out.println(new MaxReStr().findStr(s));
#include &iostream&
#include &string&
int main(){
int len = 0;
for(int i = 0; i & s.size(); i++){
for(int j = s.size()-i; j &= j--){
string str = s.substr(i, j);
int front = s.find(str);
int back = s.rfind(str);
if(front != back && j & len){
cout && len &&
一个简单的实现,时间复杂度为O(n3)
string longestRepeatStr(string str) {
int n = str.length();
for(int i = n - 1; i & 0; --i)
for(int j = 0; j & ++j) {
if(i + j & n) {
string cur = str.substr(j,i);
int index1 = str.find(cur); // 从前往后找
int index2 = str.rfind(cur); // 从后往前找
if(index1 != index2)
有个疑问。
请问各位大佬,按照参考答案中&ana&和“anana”最大公共长度的不是ana吗?
那最后得出的不应该是ana?(虽然这是个明显错误的答案,但是逻辑上我有点绕不过来……不明白为什么)
下面说明为什么(rand7()-1)*7+rand7()可以构造出均匀分布在1-49的随机数:
首先rand7()-1得到一个离散整数集合{0,1,2,3,4,5,6},其中每个整数的出现概率都是1/7。那么(rand7()-1)*7得到一个离散整数集合A={0,7,14,21,28,35,42},其中每个整数的出现概率也都是1/7。而rand7()得到的集合B={1,2,3,4,5,6,7}中每个整数出现的概率也是1/7。显然集合A和B中任何两个元素组合可以与1-49之间的一个整数一一对应,也就是说1-49之间的任何一个数,可以唯一确定A和B中两个元素的一种组合方式,反过来也成立。由于A和B中元素可以看成是独立事件,根据独立事件的概率公式P(AB)=P(A)P(B),得到每个组合的概率是1/7*1/7=1/49。因此(rand7()-1)*7+rand7()生成的整数均匀分布在1-49之间,每个数的概率都是1/49。
int rand7()
x=(rand7()-1)*7+rand7();
while(x&40);
return x%10+1;
#include &iostream&
#include &string&
int main()
while(getline(cin, input))
int len = input.length();
if(len & 1)
int max_len = 1;
int curr_len = 1;
for(int i = 1; i & i++)
if(input[i] == input[i - 1])
curr_len++;
curr_len = 1;
if(curr_len & max_len)
max_len = curr_
cout && max_len &&
http://blog.csdn.net/qunqin/article/details/7312295
问个很LOW的问题,谁能讲讲排序的规则,C自学者一枚。。
#include&stdio.h& &/div& &p&
void LongChar(char* str)&br /& {&br /&
&if(str==NULL)&br /& &&&br
/& &int max=0;&br /& &int first=0;&br
/& &int count=0;&br /& &for(int
i=1;i&strlen(str);i++)&br /& &&for(int
k=0,j=0;j&strlen(str)-i;j++)&br /&
&&&if(str[j]==str[i+j])k++;&br /&
&&&else&br /&
&&&&k=0;&br /&
&&&if(k&max)&br /&
&&&{&br /&
&&&&max=k;&br /&
&&&&first=j-k+1;&br /&
&&&} &/p& &p&
&&if(max&0)&br /&
&&&cout&&&long:&&&max&&&br
/& &&&for(;count&count++)&br
&&&&cout&&str[first+count];&br
&&&&cout&&&br
/& &&}&br /& } &/p& &div&
main()&br /& {& &/div& &div&
&&&&&string a[200];
&/div& &div&
&&&&printf(&请输入一个字符串:&);
&/div& &div&
&&&&gets(a); &/div&
&&&&&char*
str=a; &/div& &div&
&&&&&LongChar(str);&br
/& &return 0;&br /& } &/div&
#include &iostream&
#include &string&
#include &cstdio&
int main()
freopen(&test.txt&, &r&, stdin);
while(cin&&str)
string maxS
for(int i = 0; i & str.size(); i++)
for(int j = (str.size() - i); j &= 1; j--)
string subStr = str.substr(i, j);
int start = str.find(subStr);
int end = str.rfind(subStr);
if(start + subStr.size() &= end && maxStr.size() & subStr.size())
maxStr = subS
cout&&maxStr&&
构造一颗后缀树,在构造的过程中就能记录最长的重复序列。
构造后缀树的时间复杂度O(n^2),最终的时间复杂度为O(n^2)
#include &stdlib.h&
#include &stdio.h&
#define MaxChar 5000
char a[MaxChar];
char *post[MaxChar];
int pstrcmp(const void *p1, const void *p2)
return strcmp(*(char* const *)p1, *(char* const *)p2);
//求排序后相邻两个串的最长公共前缀
int common_len(char *p, char *q)
int k = 0;
while(*p && (*p++ == *q++))
int main()
int i = 0,
int max = 0, max_index = 0;
while((ch = getchar()) != '\n')
post[i] = &a[i];//将后缀式的指针指向该后缀式的第一个字符
a[i] = '\0';
qsort(post, i, sizeof(char *), pstrcmp);//对所有后缀式进行排序
for(j = 0; j & i - 1; j++)
temp = common_len(post[j], post[j+1]);
if(max & temp)
max_inde敏感词rintf(&%d %s\n&, max, post[max_index]);
string findString( string& s ){
if( s.length() & 2 )
int index = 0;
int maxLen = 0;
int len = s.length();
for ( ; index&len-1; ++index ) {
int j = index+1;
while( s[index] != s[j] && j&len )
int count = 0;
if( j!=len ){
while( s[i] == s[j] ){
tmp.push_back( s[i] );
if( count&maxLen ){
res.swap( tmp );
tmp.clear();
&pre class=&prettyprint lang-java&&class obtainString {
public int maxStr(String str) {
String left, temp =
str.length();
for (int i = i &= 0; i--) {
str.substring(0, i - 1);
left = str.substring(1);
(left.contains(temp)) {
System.out.println(temp);
temp.length();
public static void
main(String[] args) {
obtainString ob = new obtainString();
System.out.println(ob.maxStr(&aaaa1&));
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
京ICP备号-4
扫一扫,把题目装进口袋查看: 160|回复: 2
急急急! 求大佬帮忙做一个C语言航班管理系统程序。
一、航班管理系统 【功能需求】&&程序启动后显示主菜单,包括下面的选项:&&1. 显示航班列表&&2. 增加航班&&3. 删除航班&&4. 航班订票&&5. 航班退票&&6. 航班乘客显示&&7. 航班存盘& &8. 从文件调入&&9. 退出&& 按下相应的数字键后进入各自的子功能 每个子功能执行完毕后,返回并显示主菜单 【功能说明】&&1. 显示航班列表:在屏幕显示已登记的航班总数,及各航班的信息,包括航班号,出发地和目的地,起飞时间,落地时间,所用机型,座位数,价格。(假设航班为每日一次)&&2. 增加航班:输入航班信息,包括航班号,出发地和目的地,起飞时间,落地时间,所用机型,座位数,价格。 3. 删除航班:输入要删除的航班号,删除该航班信息。 4. 航班订票:输入航班名,日期,乘客姓名,身份证号。 5. 航班退票:输入航班名,日期,身份证号,删除乘客信息。&&6. 航班乘客显示:输入航班号和日期,显示该航班的座位号及乘客姓名,以及空余座位数。&&7. 航班存盘:输入文件名,将航班信息存入文件。&&8. 从文件调入:输入文件名,读取文件将数据调入,重新生成航班信息 9. 退出:退出程序,返回操作系统
细节要求如下:1.程序运行数据在内存的组织形式为结构体链表& && && &2.数据录入时,是否有容错检查。比如:录入信息时,录错,少录,无效信息是否有判断。(如:录入身份证件是否是18位,录入其他位数均为无效录入。& && & 3.要求用C实现。& && && && &&&
& && && && &&&注:我需要在日前解决,谢谢!
21:54 上传
点击文件名下载附件
10.74 KB, 下载次数: 16
和那个图书馆管理系统差不多的呀
C语言?控制台程序?
Powered by没有更多推荐了,
不良信息举报
举报内容:
编写一个程序,输出一个字符串中的大写英文字母数,小写英文字母数以及非英文字母数
举报原因:
原文地址:
原因补充:
最多只允许输入30个字
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!来源:网络收集 & 发布时间: &
本文地址:https://www.artkaoshi.com/8454.html
所有问题分类

我要回帖

更多关于 编写函数fun其功能是 的文章

 

随机推荐